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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x190
mov eax, dword [ebp + 8]
mov dword [ebp - 0x194], eax
mov eax, dword [0x439080]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x190], 0x63045987
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x198], eax
sub eax, 0x9277b692
je 0x4094ad
jmp 0x408c14
mov eax, dword [ebp - 0x198]
sub eax, 0x9400539b
je 0x40997b
jmp 0x408c2a
mov eax, dword [ebp - 0x198]
sub eax, 0x9d1ad077
je 0x409d09
jmp 0x408c40
mov eax, dword [ebp - 0x198]
sub eax, 0x9f852b42
je 0x4099db
jmp 0x408c56
mov eax, dword [ebp - 0x198]
sub eax, 0xa0d82108
je 0x40935f
jmp 0x408c6c
mov eax, dword [ebp - 0x198]
sub eax, 0xa3e69241
je 0x409257
jmp 0x408c82
mov eax, dword [ebp - 0x198]
sub eax, 0xa74c5704
je 0x40a2c9
jmp 0x408c98
mov eax, dword [ebp - 0x198]
sub eax, 0xac189fb6
je 0x40a144
jmp 0x408cae
mov eax, dword [ebp - 0x198]
sub eax, 0xb0ee295c
je 0x40a23f
jmp 0x408cc4
mov eax, dword [ebp - 0x198]
sub eax, 0xba9fd22e
je 0x40a260
jmp 0x408cda
mov eax, dword [ebp - 0x198]
sub eax, 0xbfe0c311
je 0x409796
jmp 0x408cf0
mov eax, dword [ebp - 0x198]
sub eax, 0xbfe40df5
je 0x409e66
jmp 0x408d06
mov eax, dword [ebp - 0x198]
sub eax, 0xca387675
je 0x40984a
jmp 0x408d1c
mov eax, dword [ebp - 0x198]
sub eax, 0xcdb89ab4
je 0x40a21b
jmp 0x408d32
mov eax, dword [ebp - 0x198]
sub eax, 0xce4e6c97
je 0x409f61
jmp 0x408d48
mov eax, dword [ebp - 0x198]
sub eax, 0xd128fe30
je 0x409c19
jmp 0x408d5e
mov eax, dword [ebp - 0x198]
sub eax, 0xd5f09c2c
je 0x409df8
jmp 0x408d74
mov eax, dword [ebp - 0x198]
sub eax, 0xd786fd87
je 0x409829
jmp 0x408d8a
mov eax, dword [ebp - 0x198]
sub eax, 0xd9afcaee
je 0x40a26f
jmp 0x408da0
mov eax, dword [ebp - 0x198]
sub eax, 0xda48e0f3
je 0x40a230
jmp 0x408db6
mov eax, dword [ebp - 0x198]
sub eax, 0xdb39baf2
je 0x409ace
jmp 0x408dcc
mov eax, dword [ebp - 0x198]
sub eax, 0xdc5a9186
je 0x409b72
jmp 0x408de2
mov eax, dword [ebp - 0x198]
sub eax, 0xdf12d500
je 0x4095ba
jmp 0x408df8
mov eax, dword [ebp - 0x198]
sub eax, 0xe8cfa537
je 0x40933e
jmp 0x408e0e
mov eax, dword [ebp - 0x198]
sub eax, 0xeb1def0c
je 0x4097f8
jmp 0x408e24
mov eax, dword [ebp - 0x198]
sub eax, 0xf43ef669
je 0x40a124
jmp 0x408e3a
mov eax, dword [ebp - 0x198]
sub eax, 0xf656bf60
je 0x409691
jmp 0x408e50
mov eax, dword [ebp - 0x198]
sub eax, 0xffd2d939
je 0x40a0b2
jmp 0x408e66
mov eax, dword [ebp - 0x198]
sub eax, 0x3bfb462
je 0x409ef3
jmp 0x408e7c
mov eax, dword [ebp - 0x198]
sub eax, 0x5cfefd4
je 0x409c91
jmp 0x408e92
mov eax, dword [ebp - 0x198]
sub eax, 0x661756a
je 0x409867
jmp 0x408ea8
mov eax, dword [ebp - 0x198]
sub eax, 0x910e537
je 0x409add
jmp 0x408ebe
mov eax, dword [ebp - 0x198]
sub eax, 0xabc8e3c
je 0x409bc5
jmp 0x408ed4
mov eax, dword [ebp - 0x198]
sub eax, 0xc67d65a
je 0x4093d5
jmp 0x408eea
mov eax, dword [ebp - 0x198]
sub eax, 0x1057b5ca
je 0x4098b8
jmp 0x408f00
mov eax, dword [ebp - 0x198]
sub eax, 0x11068c66
je 0x4094fe
jmp 0x408f16
mov eax, dword [ebp - 0x198]
sub eax, 0x12b9fe4e
je 0x409ee4
jmp 0x408f2c
mov eax, dword [ebp - 0x198]
sub eax, 0x184df13f
je 0x40a115
jmp 0x408f42
mov eax, dword [ebp - 0x198]
sub eax, 0x238da61a
je 0x409728
jmp 0x408f58
mov eax, dword [ebp - 0x198]
sub eax, 0x264cf43c
je 0x40a007
jmp 0x408f6e
mov eax, dword [ebp - 0x198]
sub eax, 0x2750d59f
je 0x409de9
jmp 0x408f84
mov eax, dword [ebp - 0x198]
sub eax, 0x28ba775f
je 0x409630
jmp 0x408f9a
mov eax, dword [ebp - 0x198]
sub eax, 0x29529717
je 0x409b2b
jmp 0x408fb0
mov eax, dword [ebp - 0x198]
sub eax, 0x2b18355b
je 0x409ff8
jmp 0x408fc6
mov eax, dword [ebp - 0x198]
sub eax, 0x2e055d60
je 0x40a1a9
jmp 0x408fdc
mov eax, dword [ebp - 0x198]
sub eax, 0x2e9d6a14
je 0x409b53
jmp 0x408ff2
mov eax, dword [ebp - 0x198]
sub eax, 0x314f5afa
je 0x40a2b4
jmp 0x409008
mov eax, dword [ebp - 0x198]
sub eax, 0x3365d828
je 0x40a302
jmp 0x40901e
mov eax, dword [ebp - 0x198]
sub eax, 0x3beabebd
je 0x409206
jmp 0x409034
mov eax, dword [ebp - 0x198]
sub eax, 0x3e7b7df2
je 0x40a1b8
jmp 0x40904a
mov eax, dword [ebp - 0x198]
sub eax, 0x44312e7a
je 0x4097a5
jmp 0x409060
mov eax, dword [ebp - 0x198]
sub eax, 0x449808e3
je 0x40a133
jmp 0x409076
mov eax, dword [ebp - 0x198]
sub eax, 0x44d27849
je 0x4095ab
jmp 0x40908c
mov eax, dword [ebp - 0x198]
sub eax, 0x52c41d18
je 0x409c58
jmp 0x4090a2
mov eax, dword [ebp - 0x198]
sub eax, 0x53ad7561
je 0x409d79
jmp 0x4090b8
mov eax, dword [ebp - 0x198]
sub eax, 0x5de37ad8
je 0x40a069
jmp 0x4090ce
mov eax, dword [ebp - 0x198]
sub eax, 0x5e01fb6e
je 0x409ba4
jmp 0x4090e4
mov eax, dword [ebp - 0x198]
sub eax, 0x614f0ad3
je 0x409a49
jmp 0x4090fa
mov eax, dword [ebp - 0x198]
sub eax, 0x63045987
je 0x4091af
jmp 0x409110
mov eax, dword [ebp - 0x198]
sub eax, 0x6fdcd2b4
je 0x409426
jmp 0x409126
mov eax, dword [ebp - 0x198]
sub eax, 0x7512e914
je 0x40a026
jmp 0x40913c
mov eax, dword [ebp - 0x198]
sub eax, 0x76196c06
je 0x40991b
jmp 0x409152
mov eax, dword [ebp - 0x198]
sub eax, 0x76de81f1
je 0x409435
jmp 0x409168
mov eax, dword [ebp - 0x198]
sub eax, 0x7a7507ac
je 0x4096b2
jmp 0x40917e
mov eax, dword [ebp - 0x198]
sub eax, 0x7acc09dd
je 0x4099cc
push eax
mov eax, esp
mov dword [ebp - 0x17c], eax
push eax
mov eax, esp
mov dword [ebp - 0x178], eax
push eax
mov eax, esp
mov dword [ebp - 0x174], eax
push eax
mov eax, esp
mov dword [ebp - 0x170], eax
push eax
mov eax, esp
mov dword [ebp - 0x16c], eax
push eax
mov eax, esp
mov dword [ebp - 0x168], eax
push eax
mov eax, esp
mov dword [ebp - 0x164], eax
push eax
mov eax, esp
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x190], 0x3beabebd
jmp 0x40a31e
mov eax, dword [0x43a57c]
mov ecx, dword [0x43a578]
mov edx, eax
add edx, 0x14b48c72
sub edx, 1
sub edx, 0x14b48c72
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, 0xac189fb6
mov ecx, 0xa3e69241
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov eax, dword [ebp - 0x194]
push eax
mov ecx, esp
mov dword [ebp - 0x15c], ecx
mov dword [ebp - 0x180], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x184], eax
lea eax, [ebp - 0x11c]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.00424030
add esp, 0xc
mov eax, dword [ebp - 0x180]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x188], eax
cmp dword [ebp - 0x188], 0
setne al
and al, 1
mov byte [ebp - 0x155], al
mov ecx, dword [0x43a57c]
mov eax, dword [0x43a578]
mov edx, ecx
sub edx, 0xe9035982
sub edx, 1
add edx, 0xe9035982
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, 0xac189fb6
mov ecx, 0xe8cfa537
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov dl, byte [ebp - 0x155]
mov eax, 0xa0d82108
mov ecx, 0x76de81f1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov ecx, dword [0x43a57c]
mov eax, dword [0x43a578]
mov edx, ecx
add edx, 0xb0533d55
sub edx, 1
sub edx, 0xb0533d55
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, 0x2e055d60
mov ecx, 0xc67d65a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov eax, dword [0x43a57c]
mov ecx, dword [0x43a578]
mov edx, eax
sub edx, 0x9b76eb51
sub edx, 1
add edx, 0x9b76eb51
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, 0x2e055d60
mov ecx, 0x6fdcd2b4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov dword [ebp - 0x190], 0x449808e3
jmp 0x40a31e
mov ecx, dword [ebp - 0x188]
mov edx, dword [ebp - 0x184]
lea eax, [ebp - 0x11c]
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 - 0x11c]
mov dword [ebp - 0x18c], eax
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0x188]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [ebp - 0x110]
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x190], 0x9277b692
jmp 0x40a31e
mov eax, dword [0x43a57c]
mov ecx, dword [0x43a578]
mov edx, eax
add edx, 0x69280bc8
sub edx, 1
sub edx, 0x69280bc8
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, 0x3e7b7df2
mov ecx, 0x11068c66
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov eax, dword [ebp - 0x154]
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 - 0x17c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov dword [ebp - 0x150], eax
mov eax, dword [0x43a57c]
mov ecx, dword [0x43a578]
mov edx, eax
sub edx, 0x3bfe3e4e
sub edx, 1
add edx, 0x3bfe3e4e
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, 0x3e7b7df2
mov ecx, 0x44d27849
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov dword [ebp - 0x190], 0xdf12d500
jmp 0x40a31e
mov ecx, dword [0x43a57c]
mov eax, dword [0x43a578]
mov edx, ecx
add edx, 0x6057e161
sub edx, 1
sub edx, 0x6057e161
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, 0xcdb89ab4
mov ecx, 0x28ba775f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov eax, dword [ebp - 0x150]
mov ecx, 0xffffffff
cmp eax, ecx
sete al
and al, 1
mov byte [ebp - 0x149], al
mov eax, dword [0x43a57c]
mov ecx, dword [0x43a578]
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, 0xcdb89ab4
mov ecx, 0xf656bf60
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov dl, byte [ebp - 0x149]
mov eax, 0x44312e7a
mov ecx, 0x7a7507ac
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov ecx, dword [0x43a57c]
mov eax, dword [0x43a578]
mov edx, ecx
sub edx, 0xa37b85b6
sub edx, 1
add edx, 0xa37b85b6
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, 0xda48e0f3
mov ecx, 0x238da61a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov ecx, dword [0x43a57c]
mov eax, dword [0x43a578]
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, 0xda48e0f3
mov ecx, 0xbfe0c311
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov dword [ebp - 0x190], 0x449808e3
jmp 0x40a31e
mov eax, dword [ebp - 0x17c]
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 - 0x148], eax
mov dword [ebp - 0x190], 0xeb1def0c
jmp 0x40a31e
mov eax, dword [ebp - 0x178]
mov ecx, dword [ebp - 0x148]
mov dword [eax], ecx
mov eax, dword [ebp - 0x178]
cmp dword [eax], 0
setne al
and al, 1
mov byte [ebp - 0x141], al
mov dword [ebp - 0x190], 0xd786fd87
jmp 0x40a31e
mov dl, byte [ebp - 0x141]
mov eax, 0xca387675
mov ecx, 0x9f852b42
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x190], 0x661756a
jmp 0x40a31e
mov eax, dword [0x43a57c]
mov ecx, dword [0x43a578]
mov edx, eax
add edx, 0x6a29eb36
sub edx, 1
sub edx, 0x6a29eb36
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, 0xb0ee295c
mov ecx, 0x1057b5ca
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov eax, dword [ebp - 0x140]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x43a57c]
mov ecx, dword [0x43a578]
mov edx, eax
add edx, 0x33576e2d
sub edx, 1
sub edx, 0x33576e2d
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, 0xb0ee295c
mov ecx, 0x76196c06
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov dword [ebp - 0x190], 0x7cfddf30
jmp 0x40a31e
mov eax, dword [0x43a57c]
mov ecx, dword [0x43a578]
mov edx, eax
add edx, 0x5f3d431a
sub edx, 1
sub edx, 0x5f3d431a
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, 0xba9fd22e
mov ecx, 0x7acc09dd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov ecx, dword [0x43a57c]
mov eax, dword [0x43a578]
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, 0xd9afcaee
mov ecx, 0x614f0ad3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov eax, dword [ebp - 0x178]
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 - 0x13c], eax
mov eax, dword [0x43a57c]
mov ecx, dword [0x43a578]
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, 0xd9afcaee
mov ecx, 0xdb39baf2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov dword [ebp - 0x190], 0x910e537
jmp 0x40a31e
mov eax, dword [ebp - 0x174]
mov ecx, dword [ebp - 0x13c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x170]
mov dword [eax], ecx
mov eax, dword [ebp - 0x18c]
mov ecx, dword [ebp - 0x170]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0x3c]
sub eax, 0xdba92187
add eax, ecx
add eax, 0xdba92187
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x190], 0x29529717
jmp 0x40a31e
mov ecx, dword [ebp - 0x138]
mov eax, dword [ebp - 0x16c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x168]
mov word [eax], 0
mov dword [ebp - 0x190], 0x2e9d6a14
jmp 0x40a31e
mov eax, dword [ebp - 0x168]
mov ax, word [eax]
mov word [ebp - 0x134], ax
mov dword [ebp - 0x190], 0xdc5a9186
jmp 0x40a31e
mov ax, word [ebp - 0x134]
movzx eax, ax
mov ecx, dword [ebp - 0x16c]
mov ecx, dword [ecx]
movzx ecx, word [ecx + 6]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x131], al
mov dword [ebp - 0x190], 0x5e01fb6e
jmp 0x40a31e
mov dl, byte [ebp - 0x131]
mov eax, 0x7512e914
mov ecx, 0xabc8e3c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
add eax, 0x350cd33f
add eax, 0x18
sub eax, 0x350cd33f
mov ecx, dword [ebp - 0x16c]
mov ecx, dword [ecx]
movzx ecx, word [ecx + 0x14]
add eax, 0x99a5ab21
add eax, ecx
sub eax, 0x99a5ab21
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x168]
movzx eax, word [eax]
imul eax, eax, 0x28
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x190], 0xd128fe30
jmp 0x40a31e
mov ecx, dword [ebp - 0x130]
mov eax, dword [ebp - 0x12c]
add ecx, 0xcedcb90a
add ecx, eax
sub ecx, 0xcedcb90a
mov eax, dword [ebp - 0x164]
mov dword [eax], ecx
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x190], 0x52c41d18
jmp 0x40a31e
mov ecx, dword [ebp - 0x128]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x432856
call fcn.00427930
add esp, 8
mov edx, eax
mov eax, 0x5cfefd4
mov ecx, 0x2750d59f
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov eax, dword [ebp - 0x160]
mov dword [eax], 0
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x164]
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 - 0x160]
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 - 0x15c]
mov byte [eax], cl
mov dword [ebp - 0x190], 0x9d1ad077
jmp 0x40a31e
mov ecx, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov edx, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, edx
add eax, ecx
xor edx, edx
sub edx, eax
mov eax, dword [ebp - 0x174]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub ecx, 0x565a7f1b
add ecx, eax
add ecx, 0x565a7f1b
mov eax, dword [ebp - 0x164]
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.00424190
add esp, 0xc
mov dword [ebp - 0x190], 0x53ad7561
jmp 0x40a31e
mov eax, dword [ebp - 0x160]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub esi, 0x4fa7a315
add esi, eax
add esi, 0x4fa7a315
mov eax, dword [ebp - 0x160]
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 - 0x15c]
mov byte [eax], cl
mov dword [ebp - 0x190], 0x2750d59f
jmp 0x40a31e
mov dword [ebp - 0x190], 0xd5f09c2c
jmp 0x40a31e
mov ecx, dword [0x43a57c]
mov eax, dword [0x43a578]
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, 0x314f5afa
mov ecx, 0xbfe40df5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov eax, dword [ebp - 0x168]
mov ax, word [eax]
mov word [ebp - 0x124], ax
mov ecx, dword [0x43a57c]
mov eax, dword [0x43a578]
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, 0x314f5afa
mov ecx, 0x12b9fe4e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov dword [ebp - 0x190], 0x3bfb462
jmp 0x40a31e
mov ecx, dword [0x43a57c]
mov eax, dword [0x43a578]
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, 0xa74c5704
mov ecx, 0xce4e6c97
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov ax, word [ebp - 0x124]
xor ecx, ecx
sub cx, ax
xor eax, eax
sub ax, 1
add cx, ax
xor eax, eax
sub ax, cx
mov word [ebp - 0x122], ax
mov ecx, dword [0x43a57c]
mov eax, dword [0x43a578]
mov edx, ecx
sub edx, 0x77b889e3
sub edx, 1
add edx, 0x77b889e3
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, 0xa74c5704
mov ecx, 0x2b18355b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov dword [ebp - 0x190], 0x264cf43c
jmp 0x40a31e
mov eax, dword [ebp - 0x168]
mov cx, word [ebp - 0x122]
mov word [eax], cx
mov dword [ebp - 0x190], 0x2e9d6a14
jmp 0x40a31e
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x190], 0x5de37ad8
jmp 0x40a31e
mov eax, dword [0x43a57c]
mov ecx, dword [0x43a578]
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, 0x3365d828
mov ecx, 0xffd2d939
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov eax, dword [ebp - 0x120]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x43a57c]
mov ecx, dword [0x43a578]
mov edx, eax
sub edx, 0x1a6b218c
sub edx, 1
add edx, 0x1a6b218c
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, 0x3365d828
mov ecx, 0x184df13f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x40a31e
mov dword [ebp - 0x190], 0xf43ef669
jmp 0x40a31e
mov dword [ebp - 0x190], 0x449808e3
jmp 0x40a31e
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.00423340
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x180], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x184], eax
lea eax, [ebp - 0x11c]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.00424030
add esp, 0xc
mov eax, dword [ebp - 0x180]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x188], eax
mov dword [ebp - 0x190], 0xa3e69241
jmp 0x40a31e
mov dword [ebp - 0x190], 0xc67d65a
jmp 0x40a31e
mov eax, dword [ebp - 0x154]
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 - 0x17c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x190], 0x11068c66
jmp 0x40a31e
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x190], 0x28ba775f
jmp 0x40a31e
mov dword [ebp - 0x190], 0x238da61a
jmp 0x40a31e
mov eax, dword [ebp - 0x140]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x190], 0x1057b5ca
jmp 0x40a31e
mov dword [ebp - 0x190], 0x9400539b
jmp 0x40a31e
mov eax, dword [ebp - 0x178]
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 - 0x190], 0x614f0ad3
jmp 0x40a31e
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x190], 0xbfe40df5
jmp 0x40a31e
mov ax, word [ebp - 0x124]
mov ax, word [ebp - 0x124]
mov ax, word [ebp - 0x124]
mov ax, word [ebp - 0x124]
mov ax, word [ebp - 0x124]
mov ax, word [ebp - 0x124]
mov dword [ebp - 0x190], 0xce4e6c97
jmp 0x40a31e
mov eax, dword [ebp - 0x120]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x190], 0xffd2d939
jmp 0x408bf8