Function at 0x10001220
Capabilities:
Allocate or change rwx memory
Read file via mapping

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x1c0
mov eax, dword [ebp + 8]
mov eax, dword [0x10068600]
xor eax, ebp
mov dword [ebp - 0x10], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x180], eax
lea eax, [ebp - 0x120]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.1000cb70
mov dword [ebp - 0x1ac], 0xa303eba8
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x1b0], eax
sub eax, 0x81fb6f0b
je 0x10002375
jmp 0x1000128b
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8277be00
je 0x10001c73
jmp 0x100012a1
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8692a54c
je 0x10002315
jmp 0x100012b7
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8704f003
je 0x1000258b
jmp 0x100012cd
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8a6ba7d4
je 0x1000221d
jmp 0x100012e3
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8bb11e2e
je 0x10001bc0
jmp 0x100012f9
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8ed94e59
je 0x1000269c
jmp 0x1000130f
mov eax, dword [ebp - 0x1b0]
sub eax, 0x929f4984
je 0x1000222c
jmp 0x10001325
mov eax, dword [ebp - 0x1b0]
sub eax, 0x95e4ba84
je 0x10001bcf
jmp 0x1000133b
mov eax, dword [ebp - 0x1b0]
sub eax, 0x9b63ab74
je 0x10001e07
jmp 0x10001351
mov eax, dword [ebp - 0x1b0]
sub eax, 0xa303eba8
je 0x10001826
jmp 0x10001367
mov eax, dword [ebp - 0x1b0]
sub eax, 0xa44b1527
je 0x10002614
jmp 0x1000137d
mov eax, dword [ebp - 0x1b0]
sub eax, 0xa9d26c6d
je 0x10001acc
jmp 0x10001393
mov eax, dword [ebp - 0x1b0]
sub eax, 0xaaa76766
je 0x100018fe
jmp 0x100013a9
mov eax, dword [ebp - 0x1b0]
sub eax, 0xb8b306c2
je 0x10002366
jmp 0x100013bf
mov eax, dword [ebp - 0x1b0]
sub eax, 0xba36199c
je 0x10001eb0
jmp 0x100013d5
mov eax, dword [ebp - 0x1b0]
sub eax, 0xbde17acc
je 0x10002719
jmp 0x100013eb
mov eax, dword [ebp - 0x1b0]
sub eax, 0xbdffed9f
je 0x100025a6
jmp 0x10001401
mov eax, dword [ebp - 0x1b0]
sub eax, 0xbec4d3b9
je 0x10001a24
jmp 0x10001417
mov eax, dword [ebp - 0x1b0]
sub eax, 0xc95242e1
je 0x10001f01
jmp 0x1000142d
mov eax, dword [ebp - 0x1b0]
sub eax, 0xd0372383
je 0x100024d3
jmp 0x10001443
mov eax, dword [ebp - 0x1b0]
sub eax, 0xdbed2cae
je 0x10001fa4
jmp 0x10001459
mov eax, dword [ebp - 0x1b0]
sub eax, 0xdd2ebbe2
je 0x10001e54
jmp 0x1000146f
mov eax, dword [ebp - 0x1b0]
sub eax, 0xdd744f79
je 0x10001947
jmp 0x10001485
mov eax, dword [ebp - 0x1b0]
sub eax, 0xe2bfd7d5
je 0x10002558
jmp 0x1000149b
mov eax, dword [ebp - 0x1b0]
sub eax, 0xe4db9a85
je 0x10002425
jmp 0x100014b1
mov eax, dword [ebp - 0x1b0]
sub eax, 0xe5cc0881
je 0x10002549
jmp 0x100014c7
mov eax, dword [ebp - 0x1b0]
sub eax, 0xeb269ea7
je 0x10002728
jmp 0x100014dd
mov eax, dword [ebp - 0x1b0]
sub eax, 0xef56b758
je 0x10002876
jmp 0x100014f3
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf762e63c
je 0x10001856
jmp 0x10001509
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf908397f
je 0x10002885
jmp 0x1000151f
mov eax, dword [ebp - 0x1b0]
sub eax, 0xfe458427
je 0x10002094
jmp 0x10001535
mov eax, dword [ebp - 0x1b0]
sub eax, 0x62fa05
je 0x10001aed
jmp 0x1000154b
mov eax, dword [ebp - 0x1b0]
sub eax, 0xd6d33f
je 0x10001c82
jmp 0x10001561
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1c0a5b7
je 0x10001c18
jmp 0x10001577
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8457120
je 0x100027b2
jmp 0x1000158d
mov eax, dword [ebp - 0x1b0]
sub eax, 0xac99703
je 0x100023c6
jmp 0x100015a3
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1631d5fd
je 0x10001d0d
jmp 0x100015b9
mov eax, dword [ebp - 0x1b0]
sub eax, 0x194d327c
je 0x100027d9
jmp 0x100015cf
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1b795fec
je 0x100022c4
jmp 0x100015e5
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1cbef078
je 0x100026ab
jmp 0x100015fb
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1d7242ee
je 0x10001d56
jmp 0x10001611
mov eax, dword [ebp - 0x1b0]
sub eax, 0x23a620e8
je 0x100021c5
jmp 0x10001627
mov eax, dword [ebp - 0x1b0]
sub eax, 0x2e46aa89
je 0x10001a54
jmp 0x1000163d
mov eax, dword [ebp - 0x1b0]
sub eax, 0x2f29ee76
je 0x100028a3
jmp 0x10001653
mov eax, dword [ebp - 0x1b0]
sub eax, 0x2f73229c
je 0x10001e7e
jmp 0x10001669
mov eax, dword [ebp - 0x1b0]
sub eax, 0x300c1eae
je 0x10001ffc
jmp 0x1000167f
mov eax, dword [ebp - 0x1b0]
sub eax, 0x33b10aa2
je 0x100020b5
jmp 0x10001695
mov eax, dword [ebp - 0x1b0]
sub eax, 0x33e119b3
je 0x10001877
jmp 0x100016ab
mov eax, dword [ebp - 0x1b0]
sub eax, 0x3688c501
je 0x10002861
jmp 0x100016c1
mov eax, dword [ebp - 0x1b0]
sub eax, 0x3856c7d9
je 0x10002894
jmp 0x100016d7
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4215da6b
je 0x10001df8
jmp 0x100016ed
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4811d4f6
je 0x10001e24
jmp 0x10001703
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4962e161
je 0x10002157
jmp 0x10001719
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4e561fba
je 0x10001b3e
jmp 0x1000172f
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4ef99aba
je 0x10001886
jmp 0x10001745
mov eax, dword [ebp - 0x1b0]
sub eax, 0x51c18704
je 0x10001fb3
jmp 0x1000175b
mov eax, dword [ebp - 0x1b0]
sub eax, 0x55b5ab58
je 0x10001cac
jmp 0x10001771
mov eax, dword [ebp - 0x1b0]
sub eax, 0x564b936e
je 0x10002749
jmp 0x10001787
mov eax, dword [ebp - 0x1b0]
sub eax, 0x5c0e5613
je 0x100026c0
jmp 0x1000179d
mov eax, dword [ebp - 0x1b0]
sub eax, 0x5ca89fa7
je 0x1000245d
jmp 0x100017b3
mov eax, dword [ebp - 0x1b0]
sub eax, 0x64e9db9d
je 0x10001a6f
jmp 0x100017c9
mov eax, dword [ebp - 0x1b0]
sub eax, 0x70d5c78c
je 0x10001a15
jmp 0x100017df
mov eax, dword [ebp - 0x1b0]
sub eax, 0x7514cf88
je 0x10001c91
jmp 0x100017f5
mov eax, dword [ebp - 0x1b0]
sub eax, 0x767fcfb8
je 0x10001a45
mov eax, dword [ebp + 8]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
sub esp, 4
mov dword [ebp - 0x184], eax
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x17c], eax
mov dword [ebp - 0x1ac], 0xf762e63c
jmp 0x100028bf
mov edx, dword [ebp - 0x17c]
mov eax, 0x33e119b3
mov ecx, 0x4ef99aba
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov dword [ebp - 0x1ac], 0x1cbef078
jmp 0x100028bf
mov ecx, dword [ebp - 0x184]
mov edx, dword [ebp - 0x180]
lea eax, [ebp - 0x120]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xc
call sub.KERNEL32.dll_K32GetModuleInformation
sub esp, 0x10
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x188], eax
lea eax, [ebp - 0x114]
mov ecx, dword [ebp - 0x184]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
sub esp, 0xc
lea eax, [ebp - 0x114]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x1ac], 0xaaa76766
jmp 0x100028bf
mov eax, dword [0x10069940]
mov ecx, dword [0x1006993c]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x5c0e5613
mov ecx, 0xdd744f79
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov eax, dword [ebp - 0x178]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0x80000000
mov dword [esp + 8], 1
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 3
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
call dword [sym.imp.KERNEL32.dll_CreateFileA]
sub esp, 0x1c
mov dword [ebp - 0x18c], eax
mov eax, 0xffffffff
cmp dword [ebp - 0x18c], eax
sete al
and al, 1
mov byte [ebp - 0x171], al
mov ecx, dword [0x10069940]
mov eax, dword [0x1006993c]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x5c0e5613
mov ecx, 0x70d5c78c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov dword [ebp - 0x1ac], 0xbec4d3b9
jmp 0x100028bf
mov dl, byte [ebp - 0x171]
mov eax, 0x2e46aa89
mov ecx, 0x767fcfb8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x170], eax
mov dword [ebp - 0x1ac], 0x64e9db9d
jmp 0x100028bf
mov eax, dword [ebp - 0x170]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x1000002
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
sub esp, 0x18
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x16c], eax
mov dword [ebp - 0x1ac], 0xa9d26c6d
jmp 0x100028bf
mov edx, dword [ebp - 0x16c]
mov eax, 0x62fa05
mov ecx, 0x7514cf88
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov eax, dword [0x10069940]
mov ecx, dword [0x1006993c]
mov edx, eax
add edx, 0x4cec18b0
sub edx, 1
sub edx, 0x4cec18b0
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xbde17acc
mov ecx, 0x4e561fba
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x168], eax
mov ecx, dword [0x10069940]
mov eax, dword [0x1006993c]
mov edx, ecx
sub edx, 0x298a0994
sub edx, 1
add edx, 0x298a0994
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xbde17acc
mov ecx, 0x8bb11e2e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov dword [ebp - 0x1ac], 0x95e4ba84
jmp 0x100028bf
mov eax, dword [0x10069940]
mov ecx, dword [0x1006993c]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xeb269ea7
mov ecx, 0x1c0a5b7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov eax, dword [ebp - 0x168]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov eax, dword [0x10069940]
mov ecx, dword [0x1006993c]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xeb269ea7
mov ecx, 0x8277be00
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov dword [ebp - 0x1ac], 0xd6d33f
jmp 0x100028bf
mov dword [ebp - 0x1ac], 0x1cbef078
jmp 0x100028bf
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x1ac], 0x55b5ab58
jmp 0x100028bf
mov eax, dword [ebp - 0x164]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
sub esp, 0x14
mov dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x198], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x1ac], 0x1631d5fd
jmp 0x100028bf
mov eax, dword [0x10069940]
mov ecx, dword [0x1006993c]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x564b936e
mov ecx, 0x1d7242ee
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov eax, dword [ebp - 0x198]
mov edx, dword [eax + 0x3c]
mov eax, dword [ebp - 0x160]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x19c], eax
mov word [ebp - 0x19e], 0
mov ecx, dword [0x10069940]
mov eax, dword [0x1006993c]
mov edx, ecx
add edx, 0xd4900f38
sub edx, 1
sub edx, 0xd4900f38
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x564b936e
mov ecx, 0x4215da6b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov dword [ebp - 0x1ac], 0x9b63ab74
jmp 0x100028bf
mov ax, word [ebp - 0x19e]
mov word [ebp - 0x15a], ax
mov dword [ebp - 0x1ac], 0x4811d4f6
jmp 0x100028bf
mov ax, word [ebp - 0x15a]
movzx eax, ax
mov dword [ebp - 0x158], eax
mov eax, dword [ebp - 0x19c]
mov ax, word [eax + 6]
mov word [ebp - 0x152], ax
mov dword [ebp - 0x1ac], 0xdd2ebbe2
jmp 0x100028bf
mov ax, word [ebp - 0x152]
movzx esi, ax
mov edx, dword [ebp - 0x158]
mov eax, 0xe2bfd7d5
mov ecx, 0x2f73229c
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov eax, dword [ebp - 0x19c]
xor ecx, ecx
sub ecx, 0x18
sub eax, ecx
mov dword [ebp - 0x150], eax
mov eax, dword [ebp - 0x19c]
movzx eax, word [eax + 0x14]
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x1ac], 0xba36199c
jmp 0x100028bf
mov eax, dword [0x10069940]
mov ecx, dword [0x1006993c]
mov edx, eax
add edx, 0xc486acdf
sub edx, 1
sub edx, 0xc486acdf
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x8457120
mov ecx, 0xc95242e1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov eax, dword [ebp - 0x150]
mov edx, dword [ebp - 0x14c]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x148], eax
movzx eax, word [ebp - 0x19e]
mov dword [ebp - 0x144], eax
mov ecx, dword [0x10069940]
mov eax, dword [0x1006993c]
mov edx, ecx
add edx, 0x6396b50e
sub edx, 1
sub edx, 0x6396b50e
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x8457120
mov ecx, 0xdbed2cae
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov dword [ebp - 0x1ac], 0x51c18704
jmp 0x100028bf
mov eax, dword [0x10069940]
mov ecx, dword [0x1006993c]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x194d327c
mov ecx, 0x300c1eae
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov eax, dword [ebp - 0x144]
imul edx, eax, 0x28
mov eax, dword [ebp - 0x148]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x1a4], eax
mov ecx, dword [ebp - 0x1a4]
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100183b0
call fcn.1000eee0
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x13d], al
mov eax, dword [0x10069940]
mov ecx, dword [0x1006993c]
mov edx, eax
add edx, 0x5bb07669
sub edx, 1
sub edx, 0x5bb07669
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x194d327c
mov ecx, 0xfe458427
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov dl, byte [ebp - 0x13d]
mov eax, 0x33b10aa2
mov ecx, 0x1b795fec
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov dword [ebp - 0x124], 0
mov eax, dword [ebp - 0x1a4]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x188]
mov eax, dword [ebp - 0x1a4]
mov eax, dword [eax + 0xc]
add edx, 0xb12dc1a7
add edx, eax
sub edx, 0xb12dc1a7
lea eax, [ebp - 0x124]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x40
mov dword [esp + 0xc], eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
sub esp, 0x10
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x1a5], al
mov eax, dword [ebp - 0x188]
mov ecx, dword [ebp - 0x1a4]
mov edx, dword [ecx + 0xc]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x13c], eax
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x1ac], 0x4962e161
jmp 0x100028bf
mov ecx, dword [0x10069940]
mov eax, dword [0x1006993c]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x3688c501
mov ecx, 0x23a620e8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov eax, dword [ebp - 0x134]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x130], eax
mov eax, dword [0x10069940]
mov ecx, dword [0x1006993c]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x3688c501
mov ecx, 0x8a6ba7d4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov dword [ebp - 0x1ac], 0x929f4984
jmp 0x100028bf
mov ecx, dword [ebp - 0x138]
mov edx, dword [ebp - 0x130]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x1a4]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x13c]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.1000ccd0
mov ecx, dword [ebp - 0x124]
mov eax, dword [ebp - 0x1a4]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x188]
mov eax, dword [ebp - 0x1a4]
mov edi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
xor esi, esi
sub esi, edi
add eax, esi
xor esi, esi
sub esi, eax
lea eax, [ebp - 0x124]
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
sub esp, 0x10
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x1a5], al
mov dword [ebp - 0x1ac], 0x1b795fec
jmp 0x100028bf
mov eax, dword [0x10069940]
mov ecx, dword [0x1006993c]
mov edx, eax
add edx, 0x32640582
sub edx, 1
sub edx, 0x32640582
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xef56b758
mov ecx, 0x8692a54c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov eax, dword [0x10069940]
mov ecx, dword [0x1006993c]
mov edx, eax
add edx, 0xd7f5e890
sub edx, 1
sub edx, 0xd7f5e890
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xef56b758
mov ecx, 0xb8b306c2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov dword [ebp - 0x1ac], 0x81fb6f0b
jmp 0x100028bf
mov eax, dword [0x10069940]
mov ecx, dword [0x1006993c]
mov edx, eax
add edx, 0xdc362c7e
sub edx, 1
sub edx, 0xdc362c7e
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xf908397f
mov ecx, 0xac99703
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov ax, word [ebp - 0x19e]
mov word [ebp - 0x12a], ax
mov eax, dword [0x10069940]
mov ecx, dword [0x1006993c]
mov edx, eax
sub edx, 0x57bff33d
sub edx, 1
add edx, 0x57bff33d
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xf908397f
mov ecx, 0xe4db9a85
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov dword [ebp - 0x1ac], 0x78c4735c
jmp 0x100028bf
mov ecx, dword [0x10069940]
mov eax, dword [0x1006993c]
mov edx, ecx
add edx, 0xb2f417ae
sub edx, 1
sub edx, 0xb2f417ae
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x3856c7d9
mov ecx, 0xd0372383
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov ecx, dword [0x10069940]
mov eax, dword [0x1006993c]
mov edx, ecx
sub edx, 0xe6f97d06
sub edx, 1
add edx, 0xe6f97d06
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x3856c7d9
mov ecx, 0xe5cc0881
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov dword [ebp - 0x1ac], 0x9b63ab74
jmp 0x100028bf
mov eax, dword [ebp - 0x18c]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov eax, dword [ebp - 0x190]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [ebp - 0x1ac], 0x8704f003
jmp 0x100028bf
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x1ac], 0xbdffed9f
jmp 0x100028bf
mov ecx, dword [0x10069940]
mov eax, dword [0x1006993c]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x2f29ee76
mov ecx, 0xa44b1527
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov eax, dword [ebp - 0x128]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov ecx, dword [0x10069940]
mov eax, dword [0x1006993c]
mov edx, ecx
add edx, 0x4184710f
sub edx, 1
sub edx, 0x4184710f
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x2f29ee76
mov ecx, 0x8ed94e59
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1ac], eax
jmp 0x100028bf
mov dword [ebp - 0x1ac], 0x1cbef078
jmp 0x100028bf
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1000bf60
add esp, 0x1c0
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x178]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0x80000000
mov dword [esp + 8], 1
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 3
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
call dword [sym.imp.KERNEL32.dll_CreateFileA]
sub esp, 0x1c
mov dword [ebp - 0x18c], eax
mov dword [ebp - 0x1ac], 0xdd744f79
jmp 0x100028bf
mov dword [ebp - 0x1ac], 0x4e561fba
jmp 0x100028bf
mov eax, dword [ebp - 0x168]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [ebp - 0x1ac], 0x1c0a5b7
jmp 0x100028bf
mov eax, dword [ebp - 0x198]
mov ecx, dword [eax + 0x3c]
mov eax, dword [ebp - 0x160]
mov eax, dword [ebp - 0x160]
mov eax, dword [ebp - 0x160]
mov eax, dword [ebp - 0x160]
mov eax, dword [ebp - 0x160]
mov eax, dword [ebp - 0x160]
mov eax, dword [ebp - 0x160]
mov eax, dword [ebp - 0x160]
mov eax, dword [ebp - 0x160]
add eax, 0x8e6769e
add eax, ecx
sub eax, 0x8e6769e
mov dword [ebp - 0x19c], eax
mov word [ebp - 0x19e], 0
mov dword [ebp - 0x1ac], 0x1d7242ee
jmp 0x100028bf
mov eax, dword [ebp - 0x150]
mov eax, dword [ebp - 0x14c]
mov eax, dword [ebp - 0x150]
mov eax, dword [ebp - 0x14c]
mov dword [ebp - 0x1ac], 0xc95242e1
jmp 0x100028bf
mov eax, dword [ebp - 0x144]
mov eax, dword [ebp - 0x144]
mov eax, dword [ebp - 0x144]
mov eax, dword [ebp - 0x144]
mov eax, dword [ebp - 0x144]
mov eax, dword [ebp - 0x144]
mov eax, dword [ebp - 0x144]
mov eax, dword [ebp - 0x144]
mov eax, dword [ebp - 0x144]
mov eax, dword [ebp - 0x144]
mov eax, dword [ebp - 0x144]
mov eax, dword [ebp - 0x144]
imul edx, eax, 0x28
mov eax, dword [ebp - 0x148]
mov eax, dword [ebp - 0x148]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x1a4], eax
mov ecx, dword [ebp - 0x1a4]
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100183b0
call fcn.1000eee0
mov dword [ebp - 0x1ac], 0x300c1eae
jmp 0x100028bf
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0x1ac], 0x23a620e8
jmp 0x100028bf
mov dword [ebp - 0x1ac], 0x8692a54c
jmp 0x100028bf
mov dword [ebp - 0x1ac], 0xac99703
jmp 0x100028bf
mov dword [ebp - 0x1ac], 0xd0372383
jmp 0x100028bf
mov eax, dword [ebp - 0x128]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [ebp - 0x1ac], 0xa44b1527
jmp 0x1000126f