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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x1b4
mov eax, dword [ebp + 8]
mov dword [ebp - 0x19c], eax
mov eax, dword [0x43a080]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x198], 0x27a7200c
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x1a0], eax
sub eax, 0x827bbe3d
je 0x409984
jmp 0x408434
mov eax, dword [ebp - 0x1a0]
sub eax, 0x86633ae5
je 0x408df4
jmp 0x40844a
mov eax, dword [ebp - 0x1a0]
sub eax, 0x8921e995
je 0x409818
jmp 0x408460
mov eax, dword [ebp - 0x1a0]
sub eax, 0x8989f353
je 0x409347
jmp 0x408476
mov eax, dword [ebp - 0x1a0]
sub eax, 0x902333cf
je 0x409948
jmp 0x40848c
mov eax, dword [ebp - 0x1a0]
sub eax, 0x91a4d734
je 0x40970b
jmp 0x4084a2
mov eax, dword [ebp - 0x1a0]
sub eax, 0x94a54cb1
je 0x408f44
jmp 0x4084b8
mov eax, dword [ebp - 0x1a0]
sub eax, 0x978b41ec
je 0x408e51
jmp 0x4084ce
mov eax, dword [ebp - 0x1a0]
sub eax, 0xa0fa9de9
je 0x40912f
jmp 0x4084e4
mov eax, dword [ebp - 0x1a0]
sub eax, 0xb06e4bdb
je 0x409285
jmp 0x4084fa
mov eax, dword [ebp - 0x1a0]
sub eax, 0xb1823fab
je 0x408ad1
jmp 0x408510
mov eax, dword [ebp - 0x1a0]
sub eax, 0xb853a103
je 0x409916
jmp 0x408526
mov eax, dword [ebp - 0x1a0]
sub eax, 0xbbcc7b8f
je 0x409213
jmp 0x40853c
mov eax, dword [ebp - 0x1a0]
sub eax, 0xbefc7ed5
je 0x408cee
jmp 0x408552
mov eax, dword [ebp - 0x1a0]
sub eax, 0xc3b7d6cd
je 0x408ba7
jmp 0x408568
mov eax, dword [ebp - 0x1a0]
sub eax, 0xc409ac89
je 0x409024
jmp 0x40857e
mov eax, dword [ebp - 0x1a0]
sub eax, 0xcb637302
je 0x408b22
jmp 0x408594
mov eax, dword [ebp - 0x1a0]
sub eax, 0xcd038de1
je 0x409094
jmp 0x4085aa
mov eax, dword [ebp - 0x1a0]
sub eax, 0xcfb1c56c
je 0x4095eb
jmp 0x4085c0
mov eax, dword [ebp - 0x1a0]
sub eax, 0xd09429f6
je 0x408a3a
jmp 0x4085d6
mov eax, dword [ebp - 0x1a0]
sub eax, 0xd24b41b4
je 0x4096ed
jmp 0x4085ec
mov eax, dword [ebp - 0x1a0]
sub eax, 0xd279200c
je 0x409993
jmp 0x408602
mov eax, dword [ebp - 0x1a0]
sub eax, 0xd6de0607
je 0x408c81
jmp 0x408618
mov eax, dword [ebp - 0x1a0]
sub eax, 0xd9cdab64
je 0x408b31
jmp 0x40862e
mov eax, dword [ebp - 0x1a0]
sub eax, 0xda708d0e
je 0x409033
jmp 0x408644
mov eax, dword [ebp - 0x1a0]
sub eax, 0xded5db4e
je 0x409483
jmp 0x40865a
mov eax, dword [ebp - 0x1a0]
sub eax, 0xe77bacca
je 0x409398
jmp 0x408670
mov eax, dword [ebp - 0x1a0]
sub eax, 0xe7dfa80c
je 0x4099d2
jmp 0x408686
mov eax, dword [ebp - 0x1a0]
sub eax, 0xebd24410
je 0x409103
jmp 0x40869c
mov eax, dword [ebp - 0x1a0]
sub eax, 0xfa309935
je 0x409a35
jmp 0x4086b2
mov eax, dword [ebp - 0x1a0]
sub eax, 0x4395a79
je 0x409234
jmp 0x4086c8
mov eax, dword [ebp - 0x1a0]
sub eax, 0x648ae24
je 0x4099f7
jmp 0x4086de
mov eax, dword [ebp - 0x1a0]
sub eax, 0xc7e6dc8
je 0x4099c3
jmp 0x4086f4
mov eax, dword [ebp - 0x1a0]
sub eax, 0xcc1918d
je 0x4095fa
jmp 0x40870a
mov eax, dword [ebp - 0x1a0]
sub eax, 0xde7dfaa
je 0x4091a5
jmp 0x408720
mov eax, dword [ebp - 0x1a0]
sub eax, 0xf155557
je 0x409620
jmp 0x408736
mov eax, dword [ebp - 0x1a0]
sub eax, 0xf4431df
je 0x408fba
jmp 0x40874c
mov eax, dword [ebp - 0x1a0]
sub eax, 0x15d0afa3
je 0x408e72
jmp 0x408762
mov eax, dword [ebp - 0x1a0]
sub eax, 0x18975b5f
je 0x408dd9
jmp 0x408778
mov eax, dword [ebp - 0x1a0]
sub eax, 0x1bd3164c
je 0x4099e1
jmp 0x40878e
mov eax, dword [ebp - 0x1a0]
sub eax, 0x20f38538
je 0x4096fc
jmp 0x4087a4
mov eax, dword [ebp - 0x1a0]
sub eax, 0x220258b4
je 0x408d5c
jmp 0x4087ba
mov eax, dword [ebp - 0x1a0]
sub eax, 0x25bb8f64
je 0x40954b
jmp 0x4087d0
mov eax, dword [ebp - 0x1a0]
sub eax, 0x27a7200c
je 0x4089cf
jmp 0x4087e6
mov eax, dword [ebp - 0x1a0]
sub eax, 0x2904c85b
je 0x408c31
jmp 0x4087fc
mov eax, dword [ebp - 0x1a0]
sub eax, 0x2e1c2bb9
je 0x4099a2
jmp 0x408812
mov eax, dword [ebp - 0x1a0]
sub eax, 0x3388d6e5
je 0x409a14
jmp 0x408828
mov eax, dword [ebp - 0x1a0]
sub eax, 0x3442c4b9
je 0x409430
jmp 0x40883e
mov eax, dword [ebp - 0x1a0]
sub eax, 0x3553b841
je 0x408f35
jmp 0x408854
mov eax, dword [ebp - 0x1a0]
sub eax, 0x3e2af73e
je 0x409896
jmp 0x40886a
mov eax, dword [ebp - 0x1a0]
sub eax, 0x3ec27e0b
je 0x409809
jmp 0x408880
mov eax, dword [ebp - 0x1a0]
sub eax, 0x3ff6d15f
je 0x409845
jmp 0x408896
mov eax, dword [ebp - 0x1a0]
sub eax, 0x443d2790
je 0x409939
jmp 0x4088ac
mov eax, dword [ebp - 0x1a0]
sub eax, 0x4df7b97c
je 0x409421
jmp 0x4088c2
mov eax, dword [ebp - 0x1a0]
sub eax, 0x51be2de0
je 0x408ebb
jmp 0x4088d8
mov eax, dword [ebp - 0x1a0]
sub eax, 0x529b6804
je 0x409925
jmp 0x4088ee
mov eax, dword [ebp - 0x1a0]
sub eax, 0x5448c841
je 0x408c40
jmp 0x408904
mov eax, dword [ebp - 0x1a0]
sub eax, 0x5fdc0c60
je 0x408dca
jmp 0x40891a
mov eax, dword [ebp - 0x1a0]
sub eax, 0x6094f5e1
je 0x4090d6
jmp 0x408930
mov eax, dword [ebp - 0x1a0]
sub eax, 0x63e617c5
je 0x409669
jmp 0x408946
mov eax, dword [ebp - 0x1a0]
sub eax, 0x6636befe
je 0x4090be
jmp 0x40895c
mov eax, dword [ebp - 0x1a0]
sub eax, 0x6a0ebfa2
je 0x409781
jmp 0x408972
mov eax, dword [ebp - 0x1a0]
sub eax, 0x6b652885
je 0x4094fe
jmp 0x408988
mov eax, dword [ebp - 0x1a0]
sub eax, 0x6dbbe51e
je 0x409338
jmp 0x40899e
mov eax, dword [ebp - 0x1a0]
sub eax, 0x716029d0
je 0x409015
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x168], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x16c], eax
lea eax, [ebp - 0x11c]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.00423fb0
mov eax, dword [ebp - 0x168]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
sub esp, 4
mov dword [ebp - 0x170], eax
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x198], 0xd09429f6
jmp 0x409a51
mov edx, dword [ebp - 0x164]
mov eax, 0x7edcee31
mov ecx, 0xd9cdab64
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov eax, dword [0x43b56c]
mov ecx, dword [0x43b568]
mov edx, eax
sub edx, 0xc189c22
sub edx, 1
add edx, 0xc189c22
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, 0x443d2790
mov ecx, 0xcb637302
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov dword [ebp - 0x198], 0x529b6804
jmp 0x409a51
mov ecx, dword [0x43b56c]
mov eax, dword [0x43b568]
mov edx, ecx
add edx, 0x6182570f
sub edx, 1
sub edx, 0x6182570f
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, 0x902333cf
mov ecx, 0xc3b7d6cd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov ecx, dword [ebp - 0x170]
mov edx, dword [ebp - 0x16c]
lea eax, [ebp - 0x11c]
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
lea eax, [ebp - 0x11c]
mov dword [ebp - 0x160], eax
mov eax, dword [0x43b56c]
mov ecx, dword [0x43b568]
mov edx, eax
add edx, 0x6c0b3e79
sub edx, 1
sub edx, 0x6c0b3e79
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, 0x902333cf
mov ecx, 0x2904c85b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov dword [ebp - 0x198], 0x5448c841
jmp 0x409a51
mov eax, dword [ebp - 0x160]
mov eax, dword [eax]
mov dword [ebp - 0x174], eax
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0x170]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
sub esp, 0xc
mov dword [ebp - 0x198], 0xd6de0607
jmp 0x409a51
lea eax, [ebp - 0x110]
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 - 0x178], eax
mov edx, 0xffffffff
mov eax, 0x18975b5f
mov ecx, 0xbefc7ed5
cmp dword [ebp - 0x178], edx
cmove eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov ecx, dword [0x43b56c]
mov eax, dword [0x43b568]
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, 0x827bbe3d
mov ecx, 0x220258b4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov ecx, dword [0x43b56c]
mov eax, dword [0x43b568]
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, 0x827bbe3d
mov ecx, 0x5fdc0c60
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov dword [ebp - 0x198], 0x529b6804
jmp 0x409a51
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x198], 0x86633ae5
jmp 0x409a51
mov eax, dword [ebp - 0x15c]
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 - 0x17c], eax
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x198], 0x978b41ec
jmp 0x409a51
mov edx, dword [ebp - 0x158]
mov eax, 0x15d0afa3
mov ecx, 0xda708d0e
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov eax, dword [0x43b56c]
mov ecx, dword [0x43b568]
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, 0xd279200c
mov ecx, 0x51be2de0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x154], eax
mov ecx, dword [0x43b56c]
mov eax, dword [0x43b568]
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, 0xd279200c
mov ecx, 0x3553b841
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov dword [ebp - 0x198], 0x94a54cb1
jmp 0x409a51
mov ecx, dword [0x43b56c]
mov eax, dword [0x43b568]
mov edx, ecx
sub edx, 0xc9cc28a6
sub edx, 1
add edx, 0xc9cc28a6
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, 0x2e1c2bb9
mov ecx, 0xf4431df
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov eax, dword [ebp - 0x154]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov eax, dword [0x43b56c]
mov ecx, dword [0x43b568]
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, 0x2e1c2bb9
mov ecx, 0x716029d0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov dword [ebp - 0x198], 0x529b6804
jmp 0x409a51
mov eax, dword [ebp - 0x17c]
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 - 0x180], eax
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x184], eax
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x198], 0xcd038de1
jmp 0x409a51
mov eax, dword [ebp - 0x150]
mov ecx, dword [ebp - 0x184]
mov edx, dword [ecx + 0x3c]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x188], eax
mov dword [ebp - 0x198], 0x6636befe
jmp 0x409a51
mov word [ebp - 0x18a], 0
mov dword [ebp - 0x198], 0x6094f5e1
jmp 0x409a51
movzx eax, word [ebp - 0x18a]
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp - 0x188]
mov ax, word [eax + 6]
mov word [ebp - 0x148], ax
mov dword [ebp - 0x198], 0xebd24410
jmp 0x409a51
mov ax, word [ebp - 0x148]
movzx ecx, ax
mov eax, dword [ebp - 0x14c]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x145], al
mov dword [ebp - 0x198], 0xa0fa9de9
jmp 0x409a51
mov ecx, dword [0x43b56c]
mov eax, dword [0x43b568]
mov edx, ecx
sub edx, 0xbd67e53a
sub edx, 1
add edx, 0xbd67e53a
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, 0xc7e6dc8
mov ecx, 0xde7dfaa
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov ecx, dword [0x43b56c]
mov eax, dword [0x43b568]
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, 0xc7e6dc8
mov ecx, 0xbbcc7b8f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov dl, byte [ebp - 0x145]
mov eax, 0x91a4d734
mov ecx, 0x4395a79
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov eax, dword [0x43b56c]
mov ecx, dword [0x43b568]
mov edx, eax
add edx, 0x33b86fc8
sub edx, 1
sub edx, 0x33b86fc8
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, 0xe7dfa80c
mov ecx, 0xb06e4bdb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov eax, dword [ebp - 0x188]
add eax, 0xea87a68
add eax, 0x18
sub eax, 0xea87a68
mov ecx, dword [ebp - 0x188]
movzx ecx, word [ecx + 0x14]
sub eax, 0x8965e56c
add eax, ecx
add eax, 0x8965e56c
mov dword [ebp - 0x144], eax
mov ax, word [ebp - 0x18a]
mov word [ebp - 0x13e], ax
mov ecx, dword [0x43b56c]
mov eax, dword [0x43b568]
mov edx, ecx
add edx, 0x7e8a8131
sub edx, 1
sub edx, 0x7e8a8131
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, 0xe7dfa80c
mov ecx, 0x6dbbe51e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov dword [ebp - 0x198], 0x8989f353
jmp 0x409a51
mov eax, dword [0x43b56c]
mov ecx, dword [0x43b568]
mov edx, eax
sub edx, 0x2070f817
sub edx, 1
add edx, 0x2070f817
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, 0x1bd3164c
mov ecx, 0xe77bacca
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov ax, word [ebp - 0x13e]
movzx eax, ax
imul eax, eax, 0x28
mov dword [ebp - 0x13c], eax
mov ecx, dword [0x43b56c]
mov eax, dword [0x43b568]
mov edx, ecx
sub edx, 0x7ea1ac68
sub edx, 1
add edx, 0x7ea1ac68
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, 0x1bd3164c
mov ecx, 0x4df7b97c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov dword [ebp - 0x198], 0x3442c4b9
jmp 0x409a51
mov eax, dword [ebp - 0x144]
mov edx, dword [ebp - 0x13c]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x190], eax
mov ecx, dword [ebp - 0x190]
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x432e67
call fcn.004278b0
mov edx, eax
mov eax, 0xded5db4e
mov ecx, 0xcfb1c56c
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov dword [ebp - 0x120], 0
mov eax, dword [ebp - 0x190]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x174]
mov eax, dword [ebp - 0x190]
mov eax, dword [eax + 0xc]
sub edx, 0x826e1799
add edx, eax
add edx, 0x826e1799
lea eax, [ebp - 0x120]
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 - 0x191], al
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x198], 0x6b652885
jmp 0x409a51
mov eax, dword [ebp - 0x190]
mov edx, dword [eax + 0xc]
mov eax, dword [ebp - 0x138]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x190]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x198], 0x25bb8f64
jmp 0x409a51
mov ecx, dword [ebp - 0x130]
mov eax, dword [ebp - 0x12c]
add ecx, 0x4d62ab30
add ecx, eax
sub ecx, 0x4d62ab30
mov eax, dword [ebp - 0x190]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x134]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00424110
mov ecx, dword [ebp - 0x120]
mov eax, dword [ebp - 0x190]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x174]
mov eax, dword [ebp - 0x190]
mov eax, dword [eax + 0xc]
add esi, 0x62275cb3
add esi, eax
sub esi, 0x62275cb3
lea eax, [ebp - 0x120]
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 - 0x191], al
mov dword [ebp - 0x198], 0xcfb1c56c
jmp 0x409a51
mov dword [ebp - 0x198], 0xcc1918d
jmp 0x409a51
mov ax, word [ebp - 0x18a]
xor ecx, ecx
sub cx, 1
sub ax, cx
mov word [ebp - 0x126], ax
mov dword [ebp - 0x198], 0xf155557
jmp 0x409a51
mov eax, dword [0x43b56c]
mov ecx, dword [0x43b568]
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, 0x648ae24
mov ecx, 0x63e617c5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov ax, word [ebp - 0x126]
mov word [ebp - 0x18a], ax
mov ecx, dword [0x43b56c]
mov eax, dword [0x43b568]
mov edx, ecx
sub edx, 0x8cac3eab
sub edx, 1
add edx, 0x8cac3eab
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, 0x648ae24
mov ecx, 0xd24b41b4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov dword [ebp - 0x198], 0x20f38538
jmp 0x409a51
mov dword [ebp - 0x198], 0x6094f5e1
jmp 0x409a51
mov ecx, dword [0x43b56c]
mov eax, dword [0x43b568]
mov edx, ecx
add edx, 0x1d9f346d
sub edx, 1
sub edx, 0x1d9f346d
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, 0x3388d6e5
mov ecx, 0x6a0ebfa2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov eax, dword [ebp - 0x178]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov ecx, dword [0x43b56c]
mov eax, dword [0x43b568]
mov edx, ecx
add edx, 0x23185afd
sub edx, 1
sub edx, 0x23185afd
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, 0x3388d6e5
mov ecx, 0x3ec27e0b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov dword [ebp - 0x198], 0x8921e995
jmp 0x409a51
mov eax, dword [ebp - 0x17c]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov eax, dword [ebp - 0x16c]
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x198], 0x3ff6d15f
jmp 0x409a51
mov eax, dword [0x43b56c]
mov ecx, dword [0x43b568]
mov edx, eax
sub edx, 0x7349f4ac
sub edx, 1
add edx, 0x7349f4ac
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, 0xfa309935
mov ecx, 0x3e2af73e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov ecx, dword [0x43b56c]
mov eax, dword [0x43b568]
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, 0xfa309935
mov ecx, 0xb853a103
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x409a51
mov dword [ebp - 0x198], 0x529b6804
jmp 0x409a51
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.004232c0
add esp, 0x1b4
pop esi
pop ebx
pop ebp
ret
mov dword [ebp - 0x198], 0xb1823fab
jmp 0x409a51
mov ecx, dword [ebp - 0x170]
mov edx, dword [ebp - 0x16c]
lea eax, [ebp - 0x11c]
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 dword [ebp - 0x198], 0xc3b7d6cd
jmp 0x409a51
mov dword [ebp - 0x198], 0x220258b4
jmp 0x409a51
mov dword [ebp - 0x198], 0x51be2de0
jmp 0x409a51
mov eax, dword [ebp - 0x154]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [ebp - 0x198], 0xf4431df
jmp 0x409a51
mov dword [ebp - 0x198], 0xde7dfaa
jmp 0x409a51
mov dword [ebp - 0x198], 0xb06e4bdb
jmp 0x409a51
mov ax, word [ebp - 0x13e]
mov dword [ebp - 0x198], 0xe77bacca
jmp 0x409a51
mov ax, word [ebp - 0x126]
mov word [ebp - 0x18a], ax
mov dword [ebp - 0x198], 0x63e617c5
jmp 0x409a51
mov eax, dword [ebp - 0x178]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [ebp - 0x198], 0x6a0ebfa2
jmp 0x409a51
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [ebp - 0x198], 0x3e2af73e
jmp 0x408418