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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0xb4
mov eax, dword [ebp + 8]
mov dword [ebp - 0xb8], eax
mov eax, dword [0x10066c04]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov ecx, dword [0x10067ea8]
mov eax, dword [0x10067ea4]
mov edx, ecx
sub edx, 0x4f7e1f49
sub edx, 1
add edx, 0x4f7e1f49
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0xae], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0xad], al
mov dword [ebp - 0xb4], 0x59c11d7c
mov eax, dword [ebp - 0xb4]
mov dword [ebp - 0xbc], eax
sub eax, 0x804da54c
je 0x10004a59
jmp 0x10001ca3
mov eax, dword [ebp - 0xbc]
sub eax, 0x867d39cb
je 0x10004717
jmp 0x10001cb9
mov eax, dword [ebp - 0xbc]
sub eax, 0x8887a2d9
je 0x100043ae
jmp 0x10001ccf
mov eax, dword [ebp - 0xbc]
sub eax, 0x8b817bba
je 0x10002be7
jmp 0x10001ce5
mov eax, dword [ebp - 0xbc]
sub eax, 0x8c1a7836
je 0x10003aab
jmp 0x10001cfb
mov eax, dword [ebp - 0xbc]
sub eax, 0x8f9dd860
je 0x10003b19
jmp 0x10001d11
mov eax, dword [ebp - 0xbc]
sub eax, 0x9364e12b
je 0x100044f5
jmp 0x10001d27
mov eax, dword [ebp - 0xbc]
sub eax, 0x95f9fb0d
je 0x10004506
jmp 0x10001d3d
mov eax, dword [ebp - 0xbc]
sub eax, 0x9810758b
je 0x10002eaf
jmp 0x10001d53
mov eax, dword [ebp - 0xbc]
sub eax, 0x98b64e6f
je 0x1000336a
jmp 0x10001d69
mov eax, dword [ebp - 0xbc]
sub eax, 0x98ec7b1b
je 0x1000494b
jmp 0x10001d7f
mov eax, dword [ebp - 0xbc]
sub eax, 0x9ebfac01
je 0x100037c1
jmp 0x10001d95
mov eax, dword [ebp - 0xbc]
sub eax, 0xa12679ab
je 0x100038e4
jmp 0x10001dab
mov eax, dword [ebp - 0xbc]
sub eax, 0xa59f1c2a
je 0x10002c38
jmp 0x10001dc1
mov eax, dword [ebp - 0xbc]
sub eax, 0xa61ce27b
je 0x10003243
jmp 0x10001dd7
mov eax, dword [ebp - 0xbc]
sub eax, 0xadea7bb1
je 0x10002f07
jmp 0x10001ded
mov eax, dword [ebp - 0xbc]
sub eax, 0xb1256993
je 0x100039e6
jmp 0x10001e03
mov eax, dword [ebp - 0xbc]
sub eax, 0xb366be13
je 0x10003537
jmp 0x10001e19
mov eax, dword [ebp - 0xbc]
sub eax, 0xb9e676cc
je 0x10002d99
jmp 0x10001e2f
mov eax, dword [ebp - 0xbc]
sub eax, 0xbaa5cecf
je 0x10004826
jmp 0x10001e45
mov eax, dword [ebp - 0xbc]
sub eax, 0xbddfc745
je 0x10004653
jmp 0x10001e5b
mov eax, dword [ebp - 0xbc]
sub eax, 0xbe80651d
je 0x1000374b
jmp 0x10001e71
mov eax, dword [ebp - 0xbc]
sub eax, 0xbeda8b6f
je 0x100046d3
jmp 0x10001e87
mov eax, dword [ebp - 0xbc]
sub eax, 0xc104603a
je 0x10002cd3
jmp 0x10001e9d
mov eax, dword [ebp - 0xbc]
sub eax, 0xc2f56cea
je 0x10003a63
jmp 0x10001eb3
mov eax, dword [ebp - 0xbc]
sub eax, 0xc427298e
je 0x10004409
jmp 0x10001ec9
mov eax, dword [ebp - 0xbc]
sub eax, 0xc71ff150
je 0x10002b1e
jmp 0x10001edf
mov eax, dword [ebp - 0xbc]
sub eax, 0xca0c4853
je 0x10003863
jmp 0x10001ef5
mov eax, dword [ebp - 0xbc]
sub eax, 0xca1a3d40
je 0x1000454b
jmp 0x10001f0b
mov eax, dword [ebp - 0xbc]
sub eax, 0xcb7bd943
je 0x10004a21
jmp 0x10001f21
mov eax, dword [ebp - 0xbc]
sub eax, 0xcc5d33a6
je 0x10003095
jmp 0x10001f37
mov eax, dword [ebp - 0xbc]
sub eax, 0xcce1e2c4
je 0x100049e5
jmp 0x10001f4d
mov eax, dword [ebp - 0xbc]
sub eax, 0xcef26415
je 0x10002b6f
jmp 0x10001f63
mov eax, dword [ebp - 0xbc]
sub eax, 0xcf4f9527
je 0x10004112
jmp 0x10001f79
mov eax, dword [ebp - 0xbc]
sub eax, 0xd0c38f7d
je 0x1000310e
jmp 0x10001f8f
mov eax, dword [ebp - 0xbc]
sub eax, 0xd1c6dd8c
je 0x10003f48
jmp 0x10001fa5
mov eax, dword [ebp - 0xbc]
sub eax, 0xd280f6d5
je 0x10004a86
jmp 0x10001fbb
mov eax, dword [ebp - 0xbc]
sub eax, 0xd9d1e9c5
je 0x100049c7
jmp 0x10001fd1
mov eax, dword [ebp - 0xbc]
sub eax, 0xdbe28336
je 0x10003812
jmp 0x10001fe7
mov eax, dword [ebp - 0xbc]
sub eax, 0xdca17321
je 0x10004168
jmp 0x10001ffd
mov eax, dword [ebp - 0xbc]
sub eax, 0xdcbf2349
je 0x100041e9
jmp 0x10002013
mov eax, dword [ebp - 0xbc]
sub eax, 0xde69a461
je 0x10002f99
jmp 0x10002029
mov eax, dword [ebp - 0xbc]
sub eax, 0xe2d0300a
je 0x10003086
jmp 0x1000203f
mov eax, dword [ebp - 0xbc]
sub eax, 0xe2db9175
je 0x10003ef7
jmp 0x10002055
mov eax, dword [ebp - 0xbc]
sub eax, 0xe2f4ac6b
je 0x10004a4a
jmp 0x1000206b
mov eax, dword [ebp - 0xbc]
sub eax, 0xe633a5b7
je 0x10003d59
jmp 0x10002081
mov eax, dword [ebp - 0xbc]
sub eax, 0xe71b7f5b
je 0x10002915
jmp 0x10002097
mov eax, dword [ebp - 0xbc]
sub eax, 0xe90c89f3
je 0x10003af7
jmp 0x100020ad
mov eax, dword [ebp - 0xbc]
sub eax, 0xe998e180
je 0x100045b9
jmp 0x100020c3
mov eax, dword [ebp - 0xbc]
sub eax, 0xe9d86829
je 0x10003969
jmp 0x100020d9
mov eax, dword [ebp - 0xbc]
sub eax, 0xec0d8aa0
je 0x10003007
jmp 0x100020ef
mov eax, dword [ebp - 0xbc]
sub eax, 0xecd38224
je 0x10003dd5
jmp 0x10002105
mov eax, dword [ebp - 0xbc]
sub eax, 0xeeb13c69
je 0x10004078
jmp 0x1000211b
mov eax, dword [ebp - 0xbc]
sub eax, 0xef0d4ff0
je 0x10003e9c
jmp 0x10002131
mov eax, dword [ebp - 0xbc]
sub eax, 0xf1c9c91e
je 0x10002cb5
jmp 0x10002147
mov eax, dword [ebp - 0xbc]
sub eax, 0xf5c50772
je 0x100041d0
jmp 0x1000215d
mov eax, dword [ebp - 0xbc]
sub eax, 0xfa32584d
je 0x10003a54
jmp 0x10002173
mov eax, dword [ebp - 0xbc]
sub eax, 0xfbcaa94a
je 0x10004726
jmp 0x10002189
mov eax, dword [ebp - 0xbc]
sub eax, 0xfc365249
je 0x10003b31
jmp 0x1000219f
mov eax, dword [ebp - 0xbc]
sub eax, 0xfc67e537
je 0x10003580
jmp 0x100021b5
mov eax, dword [ebp - 0xbc]
sub eax, 0xfced1769
je 0x1000328e
jmp 0x100021cb
mov eax, dword [ebp - 0xbc]
sub eax, 0xfe7074b9
je 0x100041b0
jmp 0x100021e1
mov eax, dword [ebp - 0xbc]
sub eax, 0xfef5934d
je 0x10003d08
jmp 0x100021f7
mov eax, dword [ebp - 0xbc]
sub eax, 0x54eb88
je 0x1000439f
jmp 0x1000220d
mov eax, dword [ebp - 0xbc]
sub eax, 0x54f3b5
je 0x10003cea
mov dword [ebp - 0xb4], 0x2c5d9fce
jmp 0x10004b3b
mov eax, dword [0x10067ea8]
mov ecx, dword [0x10067ea4]
mov edx, eax
sub edx, 0x5e577889
sub edx, 1
add edx, 0x5e577889
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, 0xca1a3d40
mov ecx, 0xcef26415
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov eax, dword [ebp - 0xac]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, eax
mov eax, dword [ebp - 0xa0]
mov dword [eax], ecx
mov eax, dword [ebp - 0xa0]
cmp dword [eax], 0
setne al
and al, 1
mov byte [ebp - 0x6d], al
mov eax, dword [0x10067ea8]
mov ecx, dword [0x10067ea4]
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, 0xca1a3d40
mov ecx, 0x8b817bba
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov eax, dword [0x10067ea8]
mov ecx, dword [0x10067ea4]
mov edx, eax
sub edx, 0x5d429cb8
sub edx, 1
add edx, 0x5d429cb8
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, 0x2a83cbdc
mov ecx, 0xa59f1c2a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov ecx, dword [0x10067ea8]
mov eax, dword [0x10067ea4]
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, 0x2a83cbdc
mov ecx, 0x5147e7a4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov dl, byte [ebp - 0x6d]
mov eax, 0xc104603a
mov ecx, 0xb9e676cc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov eax, dword [0x10067ea8]
mov ecx, dword [0x10067ea4]
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, 0x32d82221
mov ecx, 0x48ce1a25
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov ecx, dword [0x10067ea8]
mov eax, dword [0x10067ea4]
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, 0x72f79ba1
mov ecx, 0x52ed199c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov dword [ebp - 0xb4], 0x78355ea5
jmp 0x10004b3b
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x9c]
mov dword [eax], ecx
mov ecx, dword [0x10067ea8]
mov eax, dword [0x10067ea4]
mov edx, ecx
add edx, 0x3872753c
sub edx, 1
sub edx, 0x3872753c
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, 0x17ab244d
mov ecx, 0x4881d4a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov ecx, dword [0x10067ea8]
mov eax, dword [0x10067ea4]
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, 0xbeda8b6f
mov ecx, 0xec0d8aa0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x68], eax
mov ecx, dword [0x10067ea8]
mov eax, dword [0x10067ea4]
mov edx, ecx
add edx, 0xbb0ddc4d
sub edx, 1
sub edx, 0xbb0ddc4d
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, 0xbeda8b6f
mov ecx, 0xe2d0300a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov dword [ebp - 0xb4], 0xcc5d33a6
jmp 0x10004b3b
mov eax, dword [ebp - 0xa0]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x68]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov eax, dword [ebp - 0x98]
xor ecx, ecx
sub esp, 0x1c
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]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0xb4], 0xd0c38f7d
jmp 0x10004b3b
mov eax, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x64]
mov dword [eax], ecx
mov edx, dword [ebp - 0x94]
mov esi, 0xffffffff
mov eax, 0x90823ab
mov ecx, 0x44af6090
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov eax, dword [ebp - 0x60]
xor ecx, ecx
sub esp, 0x18
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]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0xb4], 0xfced1769
jmp 0x10004b3b
mov ecx, dword [0x10067ea8]
mov eax, dword [0x10067ea4]
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, 0x1ecfdaae
mov ecx, 0x1586b2f0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov ecx, dword [0x10067ea8]
mov eax, dword [0x10067ea4]
mov edx, ecx
sub edx, 0x8274e9a5
sub edx, 1
add edx, 0x8274e9a5
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, 0x6c6865de
mov ecx, 0x351cb863
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov eax, dword [0x10067ea8]
mov ecx, dword [0x10067ea4]
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, 0x514fc87
mov ecx, 0xfc67e537
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov ecx, dword [0x10067ea8]
mov eax, dword [0x10067ea4]
mov edx, ecx
add edx, 0x11b5c294
sub edx, 1
sub edx, 0x11b5c294
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, 0x514fc87
mov ecx, 0x282ab37a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov ecx, dword [0x10067ea8]
mov eax, dword [0x10067ea4]
mov edx, ecx
add edx, 0x2eadfb09
sub edx, 1
sub edx, 0x2eadfb09
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, 0xe2f4ac6b
mov ecx, 0x9ebfac01
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov eax, dword [0x10067ea8]
mov ecx, dword [0x10067ea4]
mov edx, eax
sub edx, 0xaf4a03ee
sub edx, 1
add edx, 0xaf4a03ee
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, 0x867d39cb
mov ecx, 0xdbe28336
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov eax, dword [0x10067ea8]
mov ecx, dword [0x10067ea4]
mov edx, eax
add edx, 0xc00bc19
sub edx, 1
sub edx, 0xc00bc19
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, 0x867d39cb
mov ecx, 0xca0c4853
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov dl, byte [ebp - 0x55]
mov eax, 0xa03b0ef
mov ecx, 0xc2f56cea
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov eax, dword [ebp - 0x54]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x10067ea8]
mov eax, dword [0x10067ea4]
mov edx, ecx
add edx, 0x2c20bcf2
sub edx, 1
sub edx, 0x2c20bcf2
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, 0x804da54c
mov ecx, 0xe9d86829
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov dword [ebp - 0xb4], 0x721691b3
jmp 0x10004b3b
mov ecx, dword [0x10067ea8]
mov eax, dword [0x10067ea4]
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, 0x4671fe5d
mov ecx, 0xfa32584d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov dword [ebp - 0xb4], 0xc427298e
jmp 0x10004b3b
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
xor ecx, ecx
sub esp, 0x14
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]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0xb4], 0x8c1a7836
jmp 0x10004b3b
mov eax, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x50]
mov dword [eax], ecx
mov eax, dword [ebp - 0x9c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x88]
mov dword [eax], ecx
mov eax, dword [ebp - 0x9c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x88]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0x3c]
sub eax, 0x94643706
add eax, ecx
add eax, 0x94643706
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0xb4], 0xe90c89f3
jmp 0x10004b3b
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x4c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x80]
mov word [eax], 0
mov dword [ebp - 0xb4], 0x8f9dd860
jmp 0x10004b3b
mov eax, dword [ebp - 0x80]
movzx eax, word [eax]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0xb4], 0xfc365249
jmp 0x10004b3b
mov eax, dword [0x10067ea8]
mov ecx, dword [0x10067ea4]
mov edx, eax
sub edx, 0x8f284024
sub edx, 1
add edx, 0x8f284024
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, 0xd280f6d5
mov ecx, 0x5a357181
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov eax, dword [0x10067ea8]
mov ecx, dword [0x10067ea4]
mov edx, eax
add edx, 0x2757be53
sub edx, 1
sub edx, 0x2757be53
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, 0x252ded92
mov ecx, 0xe633a5b7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
sub eax, 0x468b6c6e
xor ecx, ecx
add ecx, 0x18
add eax, ecx
add eax, 0x468b6c6e
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
movzx eax, word [eax + 0x14]
mov dword [ebp - 0x38], eax
mov eax, dword [0x10067ea8]
mov ecx, dword [0x10067ea4]
mov edx, eax
sub edx, 0x65d86180
sub edx, 1
add edx, 0x65d86180
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, 0x252ded92
mov ecx, 0xecd38224
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov dword [ebp - 0xb4], 0x4181a901
jmp 0x10004b3b
mov dword [ebp - 0xb4], 0x2ce1167a
jmp 0x10004b3b
mov eax, dword [0x10067ea8]
mov ecx, dword [0x10067ea4]
mov edx, eax
add edx, 0x573b8479
sub edx, 1
sub edx, 0x573b8479
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, 0xbaa5cecf
mov ecx, 0xd1c6dd8c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov eax, dword [ebp - 0x78]
mov dword [eax], 0
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x9c]
mov edx, dword [eax]
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, edx
xor edx, edx
sub edx, esi
add eax, edx
xor edx, edx
sub edx, eax
mov eax, dword [ebp - 0x78]
sub esp, 0x10
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]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x74]
mov byte [eax], cl
mov eax, dword [ebp - 0x9c]
mov edx, dword [eax]
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add edx, 0xa681ce7
add edx, eax
sub edx, 0xa681ce7
mov eax, dword [ebp - 0x8c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, esi
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.10010c00
add esp, 0xc
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x9c]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x20], eax
mov eax, dword [0x10067ea8]
mov ecx, dword [0x10067ea4]
mov edx, eax
add edx, 0x706319cb
sub edx, 1
sub edx, 0x706319cb
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, 0xbaa5cecf
mov ecx, 0xeeb13c69
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov eax, dword [0x10067ea8]
mov ecx, dword [0x10067ea4]
mov edx, eax
add edx, 0xb46cab8
sub edx, 1
sub edx, 0xb46cab8
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, 0x19707183
mov ecx, 0x5fef5fa9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov dword [ebp - 0xb4], 0x668c17bc
jmp 0x10004b3b
mov eax, dword [ebp - 0x1c]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x74]
mov byte [eax], cl
mov dword [ebp - 0xb4], 0x1c80ff54
jmp 0x10004b3b
mov ax, word [ebp - 0x18]
xor ecx, ecx
sub cx, 1
sub ax, cx
mov word [ebp - 0x16], ax
mov dword [ebp - 0xb4], 0xf5c50772
jmp 0x10004b3b
mov eax, dword [ebp - 0x80]
mov cx, word [ebp - 0x16]
mov word [eax], cx
mov dword [ebp - 0xb4], 0x8f9dd860
jmp 0x10004b3b
mov eax, dword [0x10067ea8]
mov ecx, dword [0x10067ea4]
mov edx, eax
add edx, 0xa7ecf2f2
sub edx, 1
sub edx, 0xa7ecf2f2
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, 0xdc4cf27
mov ecx, 0x113a82a0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov dword [ebp - 0xb4], 0x8887a2d9
jmp 0x10004b3b
mov eax, dword [ebp - 0x14]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0xa8]
mov eax, dword [eax]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xb4], 0x7aaa4355
jmp 0x10004b3b
mov ecx, dword [0x10067ea8]
mov eax, dword [0x10067ea4]
mov edx, ecx
add edx, 0x1743a04e
sub edx, 1
sub edx, 0x1743a04e
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, 0x15919fd
mov ecx, 0x7bdce2bf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.1000fe70
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0xa8]
mov dword [eax], ecx
mov eax, dword [ebp - 0xa4]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.10010aa0
add esp, 0xc
mov dword [ebp - 0xb4], 0x23847e53
jmp 0x10004b3b
mov ecx, dword [0x10067ea8]
mov eax, dword [0x10067ea4]
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, 0x116df0a4
mov ecx, 0xe998e180
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov eax, dword [ebp - 0xac]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, eax
mov eax, dword [ebp - 0xa0]
mov dword [eax], ecx
mov eax, dword [ebp - 0xa0]
mov ecx, dword [0x10067ea8]
mov eax, dword [0x10067ea4]
mov edx, ecx
add edx, 0xc4d07649
sub edx, 1
sub edx, 0xc4d07649
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, 0x116df0a4
mov ecx, 0xbddfc745
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov dword [ebp - 0xb4], 0xcef26415
jmp 0x10004b3b
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0xb4], 0xec0d8aa0
jmp 0x10004b3b
mov dword [ebp - 0xb4], 0xdbe28336
jmp 0x10004b3b
mov eax, dword [0x10067ea8]
mov ecx, dword [0x10067ea4]
mov edx, eax
sub edx, 0xf44af7ee
sub edx, 1
add edx, 0xf44af7ee
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, 0x3f378de0
mov ecx, 0x35621f53
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov eax, dword [ebp - 0x78]
mov dword [eax], 0
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x9c]
mov edx, dword [eax]
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub edx, 0x7da4e802
add edx, eax
add edx, 0x7da4e802
mov eax, dword [ebp - 0x78]
sub esp, 0x10
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]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x74]
mov byte [eax], cl
mov eax, dword [ebp - 0x9c]
mov edx, dword [eax]
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add edx, 0xcdaadabd
add edx, eax
sub edx, 0xcdaadabd
mov eax, dword [ebp - 0x8c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, esi
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.10010c00
add esp, 0xc
mov eax, dword [ebp - 0x78]
mov eax, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0xb4], 0xd1c6dd8c
jmp 0x10004b3b
mov eax, dword [ebp - 0x94]
mov ecx, dword [0x10067ea8]
mov eax, dword [0x10067ea4]
mov edx, ecx
sub edx, 0xadff5685
sub edx, 1
add edx, 0xadff5685
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, 0x2f4841c
mov ecx, 0xd9d1e9c5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xb4], eax
jmp 0x10004b3b
mov dword [ebp - 0xb4], 0x113a82a0
jmp 0x10004b3b
mov dword [ebp - 0xb4], 0x7e469858
jmp 0x10004b3b
mov eax, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x5c]
mov dword [eax], ecx
mov dword [ebp - 0xb4], 0x1f8d4149
jmp 0x10004b3b
mov dword [ebp - 0xb4], 0xbe80651d
jmp 0x10004b3b
mov eax, dword [ebp - 0x54]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xb4], 0xa12679ab
jmp 0x10004b3b
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0xb4], 0x5a357181
jmp 0x10004b3b
jmp 0x10001c87