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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xa8
mov eax, dword [ebp + 8]
mov dword [ebp - 0xb0], eax
mov eax, dword [0x434080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x43558c]
mov eax, dword [0x435588]
mov edx, ecx
add edx, 0x5250c50d
sub edx, 1
sub edx, 0x5250c50d
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0xa6], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0xa5], al
mov dword [ebp - 0xac], 0x5ffa034d
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0xb4], eax
sub eax, 0x82854e17
je 0x4092a5
jmp 0x4082f4
mov eax, dword [ebp - 0xb4]
sub eax, 0x882a161d
je 0x408ece
jmp 0x40830a
mov eax, dword [ebp - 0xb4]
sub eax, 0x8b96fbee
je 0x4098d2
jmp 0x408320
mov eax, dword [ebp - 0xb4]
sub eax, 0x8bcb8cc1
je 0x4099c6
jmp 0x408336
mov eax, dword [ebp - 0xb4]
sub eax, 0x8c7e85b4
je 0x409a58
jmp 0x40834c
mov eax, dword [ebp - 0xb4]
sub eax, 0x8d1b4572
je 0x409adb
jmp 0x408362
mov eax, dword [ebp - 0xb4]
sub eax, 0x8d23d558
je 0x409948
jmp 0x408378
mov eax, dword [ebp - 0xb4]
sub eax, 0x957e823a
je 0x408d6e
jmp 0x40838e
mov eax, dword [ebp - 0xb4]
sub eax, 0x961ad921
je 0x408a86
jmp 0x4083a4
mov eax, dword [ebp - 0xb4]
sub eax, 0x9840a646
je 0x40906e
jmp 0x4083ba
mov eax, dword [ebp - 0xb4]
sub eax, 0x9e178029
je 0x409b14
jmp 0x4083d0
mov eax, dword [ebp - 0xb4]
sub eax, 0xa166121e
je 0x4096b8
jmp 0x4083e6
mov eax, dword [ebp - 0xb4]
sub eax, 0xa4d111a1
je 0x409305
jmp 0x4083fc
mov eax, dword [ebp - 0xb4]
sub eax, 0xac2d513e
je 0x408a2c
jmp 0x408412
mov eax, dword [ebp - 0xb4]
sub eax, 0xac8a27db
je 0x408afa
jmp 0x408428
mov eax, dword [ebp - 0xb4]
sub eax, 0xb11842d9
je 0x409803
jmp 0x40843e
mov eax, dword [ebp - 0xb4]
sub eax, 0xb65642ec
je 0x408c8d
jmp 0x408454
mov eax, dword [ebp - 0xb4]
sub eax, 0xb92cb2d1
je 0x4093e9
jmp 0x40846a
mov eax, dword [ebp - 0xb4]
sub eax, 0xbc440490
je 0x40948d
jmp 0x408480
mov eax, dword [ebp - 0xb4]
sub eax, 0xc19b5167
je 0x408eb0
jmp 0x408496
mov eax, dword [ebp - 0xb4]
sub eax, 0xc45fc05e
je 0x409538
jmp 0x4084ac
mov eax, dword [ebp - 0xb4]
sub eax, 0xc49fffdf
je 0x4090dc
jmp 0x4084c2
mov eax, dword [ebp - 0xb4]
sub eax, 0xc8e44735
je 0x408e0f
jmp 0x4084d8
mov eax, dword [ebp - 0xb4]
sub eax, 0xd4ed21f1
je 0x408fbd
jmp 0x4084ee
mov eax, dword [ebp - 0xb4]
sub eax, 0xd5032af8
je 0x409364
jmp 0x408504
mov eax, dword [ebp - 0xb4]
sub eax, 0xd517079b
je 0x409af0
jmp 0x40851a
mov eax, dword [ebp - 0xb4]
sub eax, 0xdfa6d82c
je 0x40905f
jmp 0x408530
mov eax, dword [ebp - 0xb4]
sub eax, 0xe353de0c
je 0x409812
jmp 0x408546
mov eax, dword [ebp - 0xb4]
sub eax, 0xe8707e51
je 0x409b51
jmp 0x40855c
mov eax, dword [ebp - 0xb4]
sub eax, 0xe9cdba13
je 0x409abb
jmp 0x408572
mov eax, dword [ebp - 0xb4]
sub eax, 0xea895e9d
je 0x4095e8
jmp 0x408588
mov eax, dword [ebp - 0xb4]
sub eax, 0xf0be87a6
je 0x4094bc
jmp 0x40859e
mov eax, dword [ebp - 0xb4]
sub eax, 0xf3f8c573
je 0x40900e
jmp 0x4085b4
mov eax, dword [ebp - 0xb4]
sub eax, 0xf4846c46
je 0x409373
jmp 0x4085ca
mov eax, dword [ebp - 0xb4]
sub eax, 0xf9d71e15
je 0x409b26
jmp 0x4085e0
mov eax, dword [ebp - 0xb4]
sub eax, 0xcf6cdcf
je 0x408d5f
jmp 0x4085f6
mov eax, dword [ebp - 0xb4]
sub eax, 0x11bcbe0f
je 0x4099a3
jmp 0x40860c
mov eax, dword [ebp - 0xb4]
sub eax, 0x134bb29d
je 0x409701
jmp 0x408622
mov eax, dword [ebp - 0xb4]
sub eax, 0x1641872f
je 0x40946f
jmp 0x408638
mov eax, dword [ebp - 0xb4]
sub eax, 0x16bc4bfb
je 0x409147
jmp 0x40864e
mov eax, dword [ebp - 0xb4]
sub eax, 0x18326512
je 0x409843
jmp 0x408664
mov eax, dword [ebp - 0xb4]
sub eax, 0x1ba81959
je 0x408f9f
jmp 0x40867a
mov eax, dword [ebp - 0xb4]
sub eax, 0x1be399e6
je 0x409821
jmp 0x408690
mov eax, dword [ebp - 0xb4]
sub eax, 0x1dab9db1
je 0x409957
jmp 0x4086a6
mov eax, dword [ebp - 0xb4]
sub eax, 0x1f4f259c
je 0x40985c
jmp 0x4086bc
mov eax, dword [ebp - 0xb4]
sub eax, 0x20193811
je 0x408d41
jmp 0x4086d2
mov eax, dword [ebp - 0xb4]
sub eax, 0x24a2187f
je 0x408aeb
jmp 0x4086e8
mov eax, dword [ebp - 0xb4]
sub eax, 0x29b7545a
je 0x4099e7
jmp 0x4086fe
mov eax, dword [ebp - 0xb4]
sub eax, 0x29cdbb7b
je 0x4099d8
jmp 0x408714
mov eax, dword [ebp - 0xb4]
sub eax, 0x2b4b438e
je 0x409138
jmp 0x40872a
mov eax, dword [ebp - 0xb4]
sub eax, 0x2e1bf04c
je 0x408b14
jmp 0x408740
mov eax, dword [ebp - 0xb4]
sub eax, 0x2f72a66d
je 0x40969b
jmp 0x408756
mov eax, dword [ebp - 0xb4]
sub eax, 0x31beeb30
je 0x40924a
jmp 0x40876c
mov eax, dword [ebp - 0xb4]
sub eax, 0x33be3bab
je 0x4091dc
jmp 0x408782
mov eax, dword [ebp - 0xb4]
sub eax, 0x349cff4b
je 0x409b3c
jmp 0x408798
mov eax, dword [ebp - 0xb4]
sub eax, 0x3661344a
je 0x408f17
jmp 0x4087ae
mov eax, dword [ebp - 0xb4]
sub eax, 0x39f99fbe
je 0x40897d
jmp 0x4087c4
mov eax, dword [ebp - 0xb4]
sub eax, 0x4b396d46
je 0x4094e7
jmp 0x4087da
mov eax, dword [ebp - 0xb4]
sub eax, 0x4ca4c345
je 0x409606
jmp 0x4087f0
mov eax, dword [ebp - 0xb4]
sub eax, 0x4d984c6b
je 0x409aff
jmp 0x408806
mov eax, dword [ebp - 0xb4]
sub eax, 0x5054efe3
je 0x408b82
jmp 0x40881c
mov eax, dword [ebp - 0xb4]
sub eax, 0x52329065
je 0x409971
jmp 0x408832
mov eax, dword [ebp - 0xb4]
sub eax, 0x568ec932
je 0x408c2d
jmp 0x408848
mov eax, dword [ebp - 0xb4]
sub eax, 0x5933d4af
je 0x409c40
jmp 0x40885e
mov eax, dword [ebp - 0xb4]
sub eax, 0x5c0a0282
je 0x408a1d
push eax
mov eax, esp
mov dword [ebp - 0xa4], eax
push eax
mov eax, esp
mov dword [ebp - 0xa0], eax
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x9c], eax
push eax
mov eax, esp
mov dword [ebp - 0x98], eax
push eax
mov eax, esp
mov dword [ebp - 0x94], eax
sub esp, 0x104
mov eax, esp
mov dword [ebp - 0x90], eax
push eax
mov eax, esp
mov dword [ebp - 0x8c], eax
push eax
mov eax, esp
mov dword [ebp - 0x88], eax
mov eax, dword [0x43558c]
mov ecx, dword [0x435588]
mov edx, eax
sub edx, 0xad8e7172
sub edx, 1
add edx, 0xad8e7172
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, 0x29cdbb7b
mov ecx, 0x5c0a0282
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov ecx, dword [ebp - 0xb0]
push eax
mov eax, esp
mov dword [ebp - 0x84], eax
push eax
mov eax, esp
mov dword [ebp - 0x80], eax
push eax
mov eax, esp
mov dword [ebp - 0x7c], eax
push eax
mov eax, esp
mov dword [ebp - 0x78], eax
push eax
mov eax, esp
mov dword [ebp - 0x74], eax
push eax
mov eax, esp
mov dword [ebp - 0x70], eax
push eax
mov eax, esp
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0xa4]
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0xa0]
mov dword [eax], ecx
mov dword [ebp - 0xac], 0x961ad921
jmp 0x409c4a
mov eax, dword [ebp - 0x9c]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.0041f000
add esp, 0xc
mov eax, dword [ebp - 0xa4]
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 - 0x98]
mov dword [eax], ecx
mov edx, dword [ebp - 0x98]
mov eax, 0x24a2187f
mov ecx, 0xac8a27db
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov dword [ebp - 0xac], 0x8bcb8cc1
jmp 0x409c4a
mov eax, dword [ebp - 0x98]
mov eax, dword [eax]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0xac], 0x2e1bf04c
jmp 0x409c4a
mov ecx, dword [0x43558c]
mov eax, dword [0x435588]
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, 0x29b7545a
mov ecx, 0x5054efe3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax]
mov eax, dword [ebp - 0x9c]
mov ecx, dword [ebp - 0x68]
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 - 0x9c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x94]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x98]
mov ecx, dword [ecx]
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 [0x43558c]
mov ecx, dword [0x435588]
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, 0x29b7545a
mov ecx, 0x568ec932
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov dword [ebp - 0xac], 0x64d0d697
jmp 0x409c4a
mov eax, dword [ebp - 0x90]
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 - 0x8c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x8c]
mov ecx, 0xffffffff
cmp dword [eax], ecx
sete al
and al, 1
mov byte [ebp - 0x61], al
mov eax, dword [0x43558c]
mov ecx, dword [0x435588]
mov edx, eax
sub edx, 0x4b74602c
sub edx, 1
add edx, 0x4b74602c
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, 0x8c7e85b4
mov ecx, 0x20193811
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov dl, byte [ebp - 0x61]
mov eax, 0x957e823a
mov ecx, 0xcf6cdcf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov dword [ebp - 0xac], 0x8bcb8cc1
jmp 0x409c4a
mov eax, dword [ebp - 0x8c]
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 - 0x60], eax
mov dword [ebp - 0xac], 0x723aff77
jmp 0x409c4a
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x60]
mov dword [eax], ecx
mov eax, dword [ebp - 0x88]
cmp dword [eax], 0
setne al
and al, 1
mov byte [ebp - 0x59], al
mov ecx, dword [0x43558c]
mov eax, dword [0x435588]
mov edx, ecx
add edx, 0xe50f1125
sub edx, 1
sub edx, 0xe50f1125
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, 0xe9cdba13
mov ecx, 0x6107e1cd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov dl, byte [ebp - 0x59]
mov eax, 0x882a161d
mov ecx, 0x9840a646
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov eax, dword [0x43558c]
mov ecx, dword [0x435588]
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, 0x8d1b4572
mov ecx, 0x3661344a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
mov dword [ebp - 0x58], eax
mov ecx, dword [0x43558c]
mov eax, dword [0x435588]
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, 0x8d1b4572
mov ecx, 0x7898ecd4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov eax, dword [ebp - 0x58]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xac], 0xd4ed21f1
jmp 0x409c4a
mov eax, dword [0x43558c]
mov ecx, dword [0x435588]
mov edx, eax
add edx, 0x6b6550ed
sub edx, 1
sub edx, 0x6b6550ed
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, 0xd517079b
mov ecx, 0xf3f8c573
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov eax, dword [0x43558c]
mov ecx, dword [0x435588]
mov edx, eax
sub edx, 0x2f2437cb
sub edx, 1
add edx, 0x2f2437cb
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, 0xd517079b
mov ecx, 0xdfa6d82c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov dword [ebp - 0xac], 0x8bcb8cc1
jmp 0x409c4a
mov ecx, dword [0x43558c]
mov eax, dword [0x435588]
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, 0x4d984c6b
mov ecx, 0xc49fffdf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x54], eax
mov eax, dword [0x43558c]
mov ecx, dword [0x435588]
mov edx, eax
add edx, 0xd3c83f52
sub edx, 1
sub edx, 0xd3c83f52
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, 0x4d984c6b
mov ecx, 0x2b4b438e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov dword [ebp - 0xac], 0x16bc4bfb
jmp 0x409c4a
mov eax, dword [ebp - 0x54]
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 - 0xac], 0x76a565f8
jmp 0x409c4a
mov ecx, dword [0x43558c]
mov eax, dword [0x435588]
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, 0x9e178029
mov ecx, 0x31beeb30
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov eax, dword [ebp - 0x78]
mov ax, word [eax]
mov word [ebp - 0x4a], ax
mov eax, dword [0x43558c]
mov ecx, dword [0x435588]
mov edx, eax
sub edx, 0xfc6806db
sub edx, 1
add edx, 0xfc6806db
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, 0x9e178029
mov ecx, 0x82854e17
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov dword [ebp - 0xac], 0x76046611
jmp 0x409c4a
mov ax, word [ebp - 0x4a]
movzx eax, ax
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
movzx eax, word [eax + 6]
mov dword [ebp - 0x44], eax
mov eax, dword [0x43558c]
mov ecx, dword [0x435588]
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, 0xf9d71e15
mov ecx, 0xd5032af8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov dword [ebp - 0xac], 0xf4846c46
jmp 0x409c4a
mov ecx, dword [0x43558c]
mov eax, dword [0x435588]
mov edx, ecx
sub edx, 0x928fb7b1
sub edx, 1
add edx, 0x928fb7b1
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, 0x349cff4b
mov ecx, 0xb92cb2d1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x44]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x3d], al
mov ecx, dword [0x43558c]
mov eax, dword [0x435588]
mov edx, ecx
add edx, 0x1cba0d91
sub edx, 1
sub edx, 0x1cba0d91
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, 0x349cff4b
mov ecx, 0x1641872f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov dl, byte [ebp - 0x3d]
mov eax, 0x1dab9db1
mov ecx, 0xbc440490
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
add eax, 0xb794c782
add eax, 0x18
sub eax, 0xb794c782
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
add eax, 4
mov dword [ebp - 0x38], eax
mov dword [ebp - 0xac], 0xf0be87a6
jmp 0x409c4a
mov eax, dword [ebp - 0x38]
movzx edx, word [eax + 0x10]
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x78]
movzx eax, word [eax]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0xac], 0x4b396d46
jmp 0x409c4a
mov eax, dword [0x43558c]
mov ecx, dword [0x435588]
mov edx, eax
add edx, 0x604b80ec
sub edx, 1
sub edx, 0x604b80ec
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, 0xe8707e51
mov ecx, 0xc45fc05e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov eax, dword [ebp - 0x30]
imul edx, eax, 0x28
mov ecx, dword [ebp - 0x34]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x74]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x42d959
call fcn.00422900
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x29], al
mov ecx, dword [0x43558c]
mov eax, dword [0x435588]
mov edx, ecx
add edx, 0x73f4d837
sub edx, 1
sub edx, 0x73f4d837
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, 0xe8707e51
mov ecx, 0xea895e9d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov dl, byte [ebp - 0x29]
mov eax, 0x4ca4c345
mov ecx, 0xe353de0c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov eax, dword [ebp - 0x70]
mov dword [eax], 0
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x94]
mov edx, dword [eax]
mov eax, dword [ebp - 0x74]
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 - 0x70]
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 - 0x6c]
mov byte [eax], cl
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x74]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0xc]
sub eax, 0x33b65a17
add eax, ecx
add eax, 0x33b65a17
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xac], 0x2f72a66d
jmp 0x409c4a
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xac], 0xa166121e
jmp 0x409c4a
mov eax, dword [0x43558c]
mov ecx, dword [0x435588]
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, 0x73ee98d8
mov ecx, 0x134bb29d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0xc]
mov ecx, dword [ebp - 0x20]
sub ecx, 0xe7474e16
add ecx, eax
add ecx, 0xe7474e16
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x28]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0041f160
add esp, 0xc
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov eax, dword [ebp - 0x94]
mov esi, dword [eax]
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub esi, 0xdf261928
add esi, eax
add esi, 0xdf261928
mov eax, dword [ebp - 0x70]
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 - 0x6c]
mov byte [eax], cl
mov ecx, dword [0x43558c]
mov eax, dword [0x435588]
mov edx, ecx
sub edx, 0xc099ed6e
sub edx, 1
add edx, 0xc099ed6e
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, 0x73ee98d8
mov ecx, 0xb11842d9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov dword [ebp - 0xac], 0xe353de0c
jmp 0x409c4a
mov dword [ebp - 0xac], 0x1be399e6
jmp 0x409c4a
mov eax, dword [ebp - 0x78]
mov ax, word [eax]
xor ecx, ecx
sub cx, 1
sub ax, cx
mov word [ebp - 0x16], ax
mov dword [ebp - 0xac], 0x18326512
jmp 0x409c4a
mov eax, dword [ebp - 0x78]
mov cx, word [ebp - 0x16]
mov word [eax], cx
mov dword [ebp - 0xac], 0x1f4f259c
jmp 0x409c4a
mov ecx, dword [0x43558c]
mov eax, dword [0x435588]
mov edx, ecx
add edx, 0xb1fd41d
sub edx, 1
sub edx, 0xb1fd41d
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, 0x5933d4af
mov ecx, 0x8b96fbee
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov ecx, dword [0x43558c]
mov eax, dword [0x435588]
mov edx, ecx
sub edx, 0x7615f266
sub edx, 1
add edx, 0x7615f266
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, 0x5933d4af
mov ecx, 0x8d23d558
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x409c4a
mov dword [ebp - 0xac], 0x33be3bab
jmp 0x409c4a
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0xac], 0x52329065
jmp 0x409c4a
mov eax, dword [ebp - 0x14]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xac], 0x11bcbe0f
jmp 0x409c4a
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xac], 0x8bcb8cc1
jmp 0x409c4a
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0041e2e0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0xac], 0x39f99fbe
jmp 0x409c4a
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax]
mov eax, dword [ebp - 0x9c]
mov ecx, dword [ebp - 0x68]
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 - 0x9c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x94]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x98]
mov ecx, dword [ecx]
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 - 0xac], 0x5054efe3
jmp 0x409c4a
mov eax, dword [ebp - 0x90]
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 - 0x8c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xac], 0xb65642ec
jmp 0x409c4a
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x60]
mov dword [eax], ecx
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0xac], 0xc8e44735
jmp 0x409c4a
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xac], 0x3661344a
jmp 0x409c4a
mov dword [ebp - 0xac], 0xf3f8c573
jmp 0x409c4a
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0xac], 0xc49fffdf
jmp 0x409c4a
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0xac], 0x31beeb30
jmp 0x409c4a
mov ax, word [ebp - 0x4a]
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0xac], 0xa4d111a1
jmp 0x409c4a
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0xac], 0xb92cb2d1
jmp 0x409c4a
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
imul edx, eax, 0x28
mov ecx, dword [ebp - 0x34]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x74]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x42d959
call fcn.00422900
add esp, 8
mov dword [ebp - 0xac], 0xc45fc05e
jmp 0x409c4a
mov dword [ebp - 0xac], 0x8b96fbee
jmp 0x4082d8