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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x1ac
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1b4], eax
mov eax, dword [0x43a080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x1b0], 0xfad580ae
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x1b8], eax
sub eax, 0x84cbe2c9
je 0x408f60
jmp 0x408605
mov eax, dword [ebp - 0x1b8]
sub eax, 0x84fe4e09
je 0x408e3f
jmp 0x40861b
mov eax, dword [ebp - 0x1b8]
sub eax, 0x8e5d5fef
je 0x409209
jmp 0x408631
mov eax, dword [ebp - 0x1b8]
sub eax, 0x93051cd3
je 0x40922a
jmp 0x408647
mov eax, dword [ebp - 0x1b8]
sub eax, 0x9c398030
je 0x409668
jmp 0x40865d
mov eax, dword [ebp - 0x1b8]
sub eax, 0x9c532faf
je 0x4091de
jmp 0x408673
mov eax, dword [ebp - 0x1b8]
sub eax, 0xa04e7682
je 0x409edd
jmp 0x408689
mov eax, dword [ebp - 0x1b8]
sub eax, 0xa163501a
je 0x409247
jmp 0x40869f
mov eax, dword [ebp - 0x1b8]
sub eax, 0xa2d3f97a
je 0x409d78
jmp 0x4086b5
mov eax, dword [ebp - 0x1b8]
sub eax, 0xa76cb6c9
je 0x409eb0
jmp 0x4086cb
mov eax, dword [ebp - 0x1b8]
sub eax, 0xa9bb4b99
je 0x40978f
jmp 0x4086e1
mov eax, dword [ebp - 0x1b8]
sub eax, 0xaa9f752e
je 0x409b7f
jmp 0x4086f7
mov eax, dword [ebp - 0x1b8]
sub eax, 0xaac5c6eb
je 0x408fe5
jmp 0x40870d
mov eax, dword [ebp - 0x1b8]
sub eax, 0xb4e5d4ff
je 0x4097e0
jmp 0x408723
mov eax, dword [ebp - 0x1b8]
sub eax, 0xb827fb03
je 0x4098dc
jmp 0x408739
mov eax, dword [ebp - 0x1b8]
sub eax, 0xbc8675c3
je 0x40949a
jmp 0x40874f
mov eax, dword [ebp - 0x1b8]
sub eax, 0xbed47fb4
je 0x40918b
jmp 0x408765
mov eax, dword [ebp - 0x1b8]
sub eax, 0xc0c569f7
je 0x409c8d
jmp 0x40877b
mov eax, dword [ebp - 0x1b8]
sub eax, 0xc5aeb26e
je 0x408e4e
jmp 0x408791
mov eax, dword [ebp - 0x1b8]
sub eax, 0xc6b094ae
je 0x409fe6
jmp 0x4087a7
mov eax, dword [ebp - 0x1b8]
sub eax, 0xcda33540
je 0x409589
jmp 0x4087bd
mov eax, dword [ebp - 0x1b8]
sub eax, 0xd2693ac6
je 0x409c9c
jmp 0x4087d3
mov eax, dword [ebp - 0x1b8]
sub eax, 0xd4408e12
je 0x409f73
jmp 0x4087e9
mov eax, dword [ebp - 0x1b8]
sub eax, 0xd8473fe7
je 0x409bad
jmp 0x4087ff
mov eax, dword [ebp - 0x1b8]
sub eax, 0xd8b501a3
je 0x40a20e
jmp 0x408815
mov eax, dword [ebp - 0x1b8]
sub eax, 0xd9dad92d
je 0x409cab
jmp 0x40882b
mov eax, dword [ebp - 0x1b8]
sub eax, 0xd9db4931
je 0x4096a3
jmp 0x408841
mov eax, dword [ebp - 0x1b8]
sub eax, 0xdac452ac
je 0x409327
jmp 0x408857
mov eax, dword [ebp - 0x1b8]
sub eax, 0xdc9c5c87
je 0x408e1e
jmp 0x40886d
mov eax, dword [ebp - 0x1b8]
sub eax, 0xdcdebcce
je 0x4095f7
jmp 0x408883
mov eax, dword [ebp - 0x1b8]
sub eax, 0xde9f5558
je 0x409dfd
jmp 0x408899
mov eax, dword [ebp - 0x1b8]
sub eax, 0xe11d0f6c
je 0x409d87
jmp 0x4088af
mov eax, dword [ebp - 0x1b8]
sub eax, 0xe2329673
je 0x408ea2
jmp 0x4088c5
mov eax, dword [ebp - 0x1b8]
sub eax, 0xe2bdb6ac
je 0x40957a
jmp 0x4088db
mov eax, dword [ebp - 0x1b8]
sub eax, 0xe5dc160e
je 0x409fa3
jmp 0x4088f1
mov eax, dword [ebp - 0x1b8]
sub eax, 0xf3800102
je 0x409b8e
jmp 0x408907
mov eax, dword [ebp - 0x1b8]
sub eax, 0xf90e05f1
je 0x40939f
jmp 0x40891d
mov eax, dword [ebp - 0x1b8]
sub eax, 0xf9ead701
je 0x409336
jmp 0x408933
mov eax, dword [ebp - 0x1b8]
sub eax, 0xfad580ae
je 0x408c66
jmp 0x408949
mov eax, dword [ebp - 0x1b8]
sub eax, 0xfd56175b
je 0x409f82
jmp 0x40895f
mov eax, dword [ebp - 0x1b8]
sub eax, 0x32c8d3f
je 0x409701
jmp 0x408975
mov eax, dword [ebp - 0x1b8]
sub eax, 0x60beab1
je 0x409e7d
jmp 0x40898b
mov eax, dword [ebp - 0x1b8]
sub eax, 0xa840cc8
je 0x409677
jmp 0x4089a1
mov eax, dword [ebp - 0x1b8]
sub eax, 0x11c01d24
je 0x4094eb
jmp 0x4089b7
mov eax, dword [ebp - 0x1b8]
sub eax, 0x149561f6
je 0x4099ed
jmp 0x4089cd
mov eax, dword [ebp - 0x1b8]
sub eax, 0x16b04073
je 0x40948b
jmp 0x4089e3
mov eax, dword [ebp - 0x1b8]
sub eax, 0x1825c518
je 0x409415
jmp 0x4089f9
mov eax, dword [ebp - 0x1b8]
sub eax, 0x19a494ae
je 0x40909c
jmp 0x408a0f
mov eax, dword [ebp - 0x1b8]
sub eax, 0x1b8fca78
je 0x408d92
jmp 0x408a25
mov eax, dword [ebp - 0x1b8]
sub eax, 0x1ed045b0
je 0x40917c
jmp 0x408a3b
mov eax, dword [ebp - 0x1b8]
sub eax, 0x1f8d71b1
je 0x409a5b
jmp 0x408a51
mov eax, dword [ebp - 0x1b8]
sub eax, 0x20cf1530
je 0x40a223
jmp 0x408a67
mov eax, dword [ebp - 0x1b8]
sub eax, 0x227169e6
je 0x408d1c
jmp 0x408a7d
mov eax, dword [ebp - 0x1b8]
sub eax, 0x22ea3355
je 0x409b70
jmp 0x408a93
mov eax, dword [ebp - 0x1b8]
sub eax, 0x2522876d
je 0x409318
jmp 0x408aa9
mov eax, dword [ebp - 0x1b8]
sub eax, 0x26121272
je 0x40a07f
jmp 0x408abf
mov eax, dword [ebp - 0x1b8]
sub eax, 0x2b76ba5e
je 0x409133
jmp 0x408ad5
mov eax, dword [ebp - 0x1b8]
sub eax, 0x2bd5e129
je 0x409fbe
jmp 0x408aeb
mov eax, dword [ebp - 0x1b8]
sub eax, 0x2c9bc6a9
je 0x4096c4
jmp 0x408b01
mov eax, dword [ebp - 0x1b8]
sub eax, 0x2e7ce939
je 0x4099de
jmp 0x408b17
mov eax, dword [ebp - 0x1b8]
sub eax, 0x33894be7
je 0x4098eb
jmp 0x408b2d
mov eax, dword [ebp - 0x1b8]
sub eax, 0x3728ac7a
je 0x408eeb
jmp 0x408b43
mov eax, dword [ebp - 0x1b8]
sub eax, 0x467f758a
je 0x40a001
jmp 0x408b59
mov eax, dword [ebp - 0x1b8]
sub eax, 0x4a4f4381
je 0x40a112
jmp 0x408b6f
mov eax, dword [ebp - 0x1b8]
sub eax, 0x4c13997f
je 0x409d19
mov eax, dword [ebp - 0x1b4]
push eax
mov ecx, esp
mov dword [ebp - 0x19c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x198], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x194], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x190], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x18c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x188], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x184], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x180], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x17c], ecx
mov dword [ebp - 0x1a0], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x1a4], eax
lea eax, [ebp - 0x120]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.004247f0
add esp, 0xc
mov eax, dword [ebp - 0x1a0]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x1b0], 0x227169e6
jmp 0x40a245
mov ecx, dword [0x43b574]
mov eax, dword [0x43b570]
mov edx, ecx
sub edx, 0x8f15a307
sub edx, 1
add edx, 0x8f15a307
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, 0x52e15179
mov ecx, 0x1b8fca78
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x1a8], eax
cmp dword [ebp - 0x1a8], 0
setne al
and al, 1
mov byte [ebp - 0x171], al
mov ecx, dword [0x43b574]
mov eax, dword [0x43b570]
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, 0x52e15179
mov ecx, 0xdc9c5c87
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov dl, byte [ebp - 0x171]
mov eax, 0x84fe4e09
mov ecx, 0xc5aeb26e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov dword [ebp - 0x1b0], 0xa76cb6c9
jmp 0x40a245
mov ecx, dword [ebp - 0x1a8]
mov edx, dword [ebp - 0x1a4]
lea eax, [ebp - 0x120]
sub esp, 0x10
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xc
call sub.KERNEL32.dll_K32GetModuleInformation
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x1ac], eax
lea eax, [ebp - 0x114]
mov dword [ebp - 0x170], eax
mov dword [ebp - 0x1b0], 0xe2329673
jmp 0x40a245
mov eax, dword [0x43b574]
mov ecx, dword [0x43b570]
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, 0xa04e7682
mov ecx, 0x3728ac7a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov ecx, dword [ebp - 0x1a8]
mov eax, dword [ebp - 0x170]
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 [0x43b574]
mov ecx, dword [0x43b570]
mov edx, eax
add edx, 0x64a2cdcd
sub edx, 1
sub edx, 0x64a2cdcd
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, 0xa04e7682
mov ecx, 0x84cbe2c9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov dword [ebp - 0x1b0], 0x7592e473
jmp 0x40a245
lea eax, [ebp - 0x114]
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 ecx, eax
mov eax, dword [ebp - 0x19c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x19c]
mov ecx, 0xffffffff
cmp dword [eax], ecx
sete al
and al, 1
mov byte [ebp - 0x169], al
mov eax, dword [0x43b574]
mov ecx, dword [0x43b570]
mov edx, eax
sub edx, 0x96c75aee
sub edx, 1
add edx, 0x96c75aee
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, 0x6efc4d71
mov ecx, 0x19a494ae
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov dl, byte [ebp - 0x169]
mov eax, 0xbed47fb4
mov ecx, 0x59fbf395
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov eax, dword [0x43b574]
mov ecx, dword [0x43b570]
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, 0xd4408e12
mov ecx, 0x1ed045b0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov dword [ebp - 0x1b0], 0xa76cb6c9
jmp 0x40a245
mov eax, dword [ebp - 0x19c]
mov eax, dword [eax]
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 - 0x168], eax
mov dword [ebp - 0x1b0], 0x9c532faf
jmp 0x40a245
mov eax, dword [ebp - 0x198]
mov ecx, dword [ebp - 0x168]
mov dword [eax], ecx
mov eax, dword [ebp - 0x198]
mov eax, dword [eax]
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x1b0], 0x8e5d5fef
jmp 0x40a245
mov edx, dword [ebp - 0x164]
mov eax, 0x93051cd3
mov ecx, 0xf9ead701
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov eax, dword [ebp - 0x19c]
mov eax, dword [eax]
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x1b0], 0xa163501a
jmp 0x40a245
mov eax, dword [0x43b574]
mov ecx, dword [0x43b570]
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, 0xfd56175b
mov ecx, 0x7ebaf979
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov dword [ebp - 0x1b0], 0xdac452ac
jmp 0x40a245
mov dword [ebp - 0x1b0], 0xa76cb6c9
jmp 0x40a245
mov eax, dword [ebp - 0x198]
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 ecx, eax
mov eax, dword [ebp - 0x194]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x1ac]
mov eax, dword [ebp - 0x190]
mov dword [eax], ecx
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x1b0], 0xf90e05f1
jmp 0x40a245
mov ecx, dword [0x43b574]
mov eax, dword [0x43b570]
mov edx, ecx
sub edx, 0xba50800c
sub edx, 1
add edx, 0xba50800c
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, 0xe5dc160e
mov ecx, 0x1825c518
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov eax, dword [ebp - 0x15c]
mov ecx, dword [ebp - 0x190]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0x3c]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x158], eax
mov eax, dword [0x43b574]
mov ecx, dword [0x43b570]
mov edx, eax
add edx, 0x7d30cbe8
sub edx, 1
sub edx, 0x7d30cbe8
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, 0xe5dc160e
mov ecx, 0x16b04073
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov dword [ebp - 0x1b0], 0xbc8675c3
jmp 0x40a245
mov eax, dword [0x43b574]
mov ecx, dword [0x43b570]
mov edx, eax
sub edx, 0x8a4140f4
sub edx, 1
add edx, 0x8a4140f4
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, 0x2bd5e129
mov ecx, 0x11c01d24
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov eax, dword [ebp - 0x18c]
mov ecx, dword [ebp - 0x158]
mov dword [eax], ecx
mov eax, dword [ebp - 0x188]
mov word [eax], 0
mov ecx, dword [0x43b574]
mov eax, dword [0x43b570]
mov edx, ecx
add edx, 0xfd535f35
sub edx, 1
sub edx, 0xfd535f35
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, 0x2bd5e129
mov ecx, 0xe2bdb6ac
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov dword [ebp - 0x1b0], 0xcda33540
jmp 0x40a245
mov ecx, dword [0x43b574]
mov eax, dword [0x43b570]
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, 0xc6b094ae
mov ecx, 0xdcdebcce
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov eax, dword [ebp - 0x188]
movzx eax, word [eax]
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x18c]
mov eax, dword [eax]
add eax, 4
mov dword [ebp - 0x150], eax
mov eax, dword [0x43b574]
mov ecx, dword [0x43b570]
mov edx, eax
add edx, 0x12b745bc
sub edx, 1
sub edx, 0x12b745bc
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, 0xc6b094ae
mov ecx, 0x9c398030
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov dword [ebp - 0x1b0], 0xa840cc8
jmp 0x40a245
mov eax, dword [ebp - 0x150]
movzx ecx, word [eax + 2]
mov eax, dword [ebp - 0x154]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x149], al
mov dword [ebp - 0x1b0], 0xd9db4931
jmp 0x40a245
mov dl, byte [ebp - 0x149]
mov eax, 0xd9dad92d
mov ecx, 0x2c9bc6a9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov eax, dword [ebp - 0x18c]
mov eax, dword [eax]
add eax, 0x37ab0c5d
add eax, 0x18
sub eax, 0x37ab0c5d
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x18c]
mov eax, dword [eax]
mov ax, word [eax + 0x14]
mov word [ebp - 0x142], ax
mov dword [ebp - 0x1b0], 0x32c8d3f
jmp 0x40a245
mov ax, word [ebp - 0x142]
movzx edx, ax
mov eax, dword [ebp - 0x148]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x188]
movzx ecx, word [ecx]
imul edx, ecx, 0x28
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x1b0], 0x51c124e9
jmp 0x40a245
mov eax, dword [0x43b574]
mov ecx, dword [0x43b570]
mov edx, eax
add edx, 0x9060eacf
sub edx, 1
sub edx, 0x9060eacf
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, 0x467f758a
mov ecx, 0xb4e5d4ff
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov eax, dword [ebp - 0x180]
mov dword [eax], 0
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x1ac]
mov eax, dword [ebp - 0x184]
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 - 0x180]
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 - 0x17c]
mov byte [eax], cl
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x13c], eax
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x138], eax
mov ecx, dword [0x43b574]
mov eax, dword [0x43b570]
mov edx, ecx
sub edx, 0x628e6cc9
sub edx, 1
add edx, 0x628e6cc9
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, 0x467f758a
mov ecx, 0xb827fb03
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov dword [ebp - 0x1b0], 0x33894be7
jmp 0x40a245
mov eax, dword [0x43b574]
mov ecx, dword [0x43b570]
mov edx, eax
add edx, 0xfcec95a8
sub edx, 1
sub edx, 0xfcec95a8
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, 0x26121272
mov ecx, 0x668f9b93
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov dword [ebp - 0x1b0], 0x149561f6
jmp 0x40a245
mov ecx, dword [0x43b574]
mov eax, dword [0x43b570]
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, 0x4a4f4381
mov ecx, 0x1f8d71b1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov ecx, dword [ebp - 0x130]
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov edx, dword [eax + 0xc]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x134]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00424950
add esp, 0xc
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x1ac]
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub esi, 0x6febf
add esi, eax
add esi, 0x6febf
mov eax, dword [ebp - 0x180]
sub esp, 0x10
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]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x17c]
mov byte [eax], cl
mov ecx, dword [0x43b574]
mov eax, dword [0x43b570]
mov edx, ecx
sub edx, 0x8a4c6c85
sub edx, 1
add edx, 0x8a4c6c85
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, 0x4a4f4381
mov ecx, 0x22ea3355
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov dword [ebp - 0x1b0], 0xaa9f752e
jmp 0x40a245
mov dword [ebp - 0x1b0], 0xf3800102
jmp 0x40a245
mov eax, dword [ebp - 0x188]
mov ax, word [eax]
mov word [ebp - 0x12a], ax
mov dword [ebp - 0x1b0], 0xd8473fe7
jmp 0x40a245
mov eax, dword [0x43b574]
mov ecx, dword [0x43b570]
mov edx, eax
add edx, 0x52c333e4
sub edx, 1
sub edx, 0x52c333e4
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, 0x78f89ebf
mov ecx, 0x7d3945fa
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov dword [ebp - 0x1b0], 0xd2693ac6
jmp 0x40a245
mov dword [ebp - 0x1b0], 0xcda33540
jmp 0x40a245
mov ecx, dword [0x43b574]
mov eax, dword [0x43b570]
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, 0xd8b501a3
mov ecx, 0x4c13997f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov dword [ebp - 0x1b0], 0xe11d0f6c
jmp 0x40a245
mov ecx, dword [0x43b574]
mov eax, dword [0x43b570]
mov edx, ecx
sub edx, 0xdfdde2f8
sub edx, 1
add edx, 0xdfdde2f8
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, 0x20cf1530
mov ecx, 0xde9f5558
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov eax, dword [ebp - 0x128]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x198]
mov eax, dword [eax]
mov dword [ebp - 0x124], eax
mov eax, dword [0x43b574]
mov ecx, dword [0x43b570]
mov edx, eax
add edx, 0x7cb34244
sub edx, 1
sub edx, 0x7cb34244
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, 0x20cf1530
mov ecx, 0x66bd554b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x40a245
mov eax, dword [ebp - 0x124]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x1a4]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1b0], 0xa76cb6c9
jmp 0x40a245
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00423ad0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [ebp - 0x1a8]
mov eax, dword [ebp - 0x170]
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 dword [ebp - 0x1b0], 0x3728ac7a
jmp 0x40a245
mov dword [ebp - 0x1b0], 0x2b76ba5e
jmp 0x40a245
mov eax, dword [ebp - 0x160]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1b0], 0x7ebaf979
jmp 0x40a245
mov eax, dword [ebp - 0x15c]
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x1b0], 0x1825c518
jmp 0x40a245
mov eax, dword [ebp - 0x18c]
mov ecx, dword [ebp - 0x158]
mov dword [eax], ecx
mov eax, dword [ebp - 0x188]
mov word [eax], 0
mov dword [ebp - 0x1b0], 0x11c01d24
jmp 0x40a245
mov eax, dword [ebp - 0x188]
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x1b0], 0xdcdebcce
jmp 0x40a245
mov eax, dword [ebp - 0x180]
mov dword [eax], 0
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x1ac]
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add edx, 0x60a06a55
add edx, eax
sub edx, 0x60a06a55
mov eax, dword [ebp - 0x180]
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 - 0x17c]
mov byte [eax], cl
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x1b0], 0xb4e5d4ff
jmp 0x40a245
mov eax, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x138]
mov eax, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x138]
mov eax, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x138]
mov eax, dword [ebp - 0x138]
mov eax, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x138]
mov eax, dword [ebp - 0x138]
mov eax, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x138]
mov eax, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x138]
mov eax, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x138]
mov eax, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x138]
mov eax, dword [ebp - 0x138]
mov eax, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x138]
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x1b0], 0x668f9b93
jmp 0x40a245
mov ecx, dword [ebp - 0x130]
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub ecx, 0xcad4e814
add ecx, eax
add ecx, 0xcad4e814
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x134]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00424950
add esp, 0xc
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x1ac]
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
xor eax, eax
sub eax, edi
sub esi, eax
mov eax, dword [ebp - 0x180]
sub esp, 0x10
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]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x17c]
mov byte [eax], cl
mov dword [ebp - 0x1b0], 0x1f8d71b1
jmp 0x40a245
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x1b0], 0x4c13997f
jmp 0x40a245
mov eax, dword [ebp - 0x128]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x1b0], 0xde9f5558
jmp 0x4085e9