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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0xac
mov eax, dword [ebp + 8]
mov dword [ebp - 0xb0], eax
mov eax, dword [0x432080]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0xac], 0x5c7df66c
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0xb4], eax
sub eax, 0x84cafe47
je 0x4084ac
jmp 0x407db4
mov eax, dword [ebp - 0xb4]
sub eax, 0x856e3d59
je 0x4087f4
jmp 0x407dca
mov eax, dword [ebp - 0xb4]
sub eax, 0x8b35283e
je 0x40864b
jmp 0x407de0
mov eax, dword [ebp - 0xb4]
sub eax, 0x91d81362
je 0x408db7
jmp 0x407df6
mov eax, dword [ebp - 0xb4]
sub eax, 0x92fa4d72
je 0x408b8e
jmp 0x407e0c
mov eax, dword [ebp - 0xb4]
sub eax, 0x941a2d2a
je 0x4084bb
jmp 0x407e22
mov eax, dword [ebp - 0xb4]
sub eax, 0x98d155c0
je 0x408d97
jmp 0x407e38
mov eax, dword [ebp - 0xb4]
sub eax, 0x9bb54407
je 0x4089ca
jmp 0x407e4e
mov eax, dword [ebp - 0xb4]
sub eax, 0x9f61e14a
je 0x4089ac
jmp 0x407e64
mov eax, dword [ebp - 0xb4]
sub eax, 0xa2e38d5c
je 0x4082e9
jmp 0x407e7a
mov eax, dword [ebp - 0xb4]
sub eax, 0xbb6a82f7
je 0x408b20
jmp 0x407e90
mov eax, dword [ebp - 0xb4]
sub eax, 0xc0d6735b
je 0x4084d5
jmp 0x407ea6
mov eax, dword [ebp - 0xb4]
sub eax, 0xd4ec6f9c
je 0x408d2a
jmp 0x407ebc
mov eax, dword [ebp - 0xb4]
sub eax, 0xdc307b35
je 0x408c26
jmp 0x407ed2
mov eax, dword [ebp - 0xb4]
sub eax, 0xddb6b5ee
je 0x408882
jmp 0x407ee8
mov eax, dword [ebp - 0xb4]
sub eax, 0xe79ddadf
je 0x40893f
jmp 0x407efe
mov eax, dword [ebp - 0xb4]
sub eax, 0xecafbcd2
je 0x408abf
jmp 0x407f14
mov eax, dword [ebp - 0xb4]
sub eax, 0xf2c37dbf
je 0x40862d
jmp 0x407f2a
mov eax, dword [ebp - 0xb4]
sub eax, 0xf357e61e
je 0x4085d8
jmp 0x407f40
mov eax, dword [ebp - 0xb4]
sub eax, 0xf44b002f
je 0x408d4d
jmp 0x407f56
mov eax, dword [ebp - 0xb4]
sub eax, 0xfa5b483d
je 0x408c3f
jmp 0x407f6c
mov eax, dword [ebp - 0xb4]
sub eax, 0xff99262d
je 0x408741
jmp 0x407f82
mov eax, dword [ebp - 0xb4]
sub eax, 0x31646b9
je 0x408dff
jmp 0x407f98
mov eax, dword [ebp - 0xb4]
sub eax, 0x5fa6f00
je 0x408c17
jmp 0x407fae
mov eax, dword [ebp - 0xb4]
sub eax, 0xb2c8572
je 0x40884a
jmp 0x407fc4
mov eax, dword [ebp - 0xb4]
sub eax, 0xd4b2834
je 0x408d1b
jmp 0x407fda
mov eax, dword [ebp - 0xb4]
sub eax, 0x15879e1e
je 0x408354
jmp 0x407ff0
mov eax, dword [ebp - 0xb4]
sub eax, 0x20231748
je 0x4086c8
jmp 0x408006
mov eax, dword [ebp - 0xb4]
sub eax, 0x20821db7
je 0x408a28
jmp 0x40801c
mov eax, dword [ebp - 0xb4]
sub eax, 0x21ef4c26
je 0x408da8
jmp 0x408032
mov eax, dword [ebp - 0xb4]
sub eax, 0x2536ff15
je 0x408526
jmp 0x408048
mov eax, dword [ebp - 0xb4]
sub eax, 0x267d5f0a
je 0x40880c
jmp 0x40805e
mov eax, dword [ebp - 0xb4]
sub eax, 0x2694e55a
je 0x408750
jmp 0x408074
mov eax, dword [ebp - 0xb4]
sub eax, 0x2a8edcf4
je 0x4083e5
jmp 0x40808a
mov eax, dword [ebp - 0xb4]
sub eax, 0x2ea4fc78
je 0x408826
jmp 0x4080a0
mov eax, dword [ebp - 0xb4]
sub eax, 0x2ec47ac1
je 0x408e14
jmp 0x4080b6
mov eax, dword [ebp - 0xb4]
sub eax, 0x2f2a9e59
je 0x4085e7
jmp 0x4080cc
mov eax, dword [ebp - 0xb4]
sub eax, 0x40918489
je 0x4082da
jmp 0x4080e2
mov eax, dword [ebp - 0xb4]
sub eax, 0x457883f0
je 0x408613
jmp 0x4080f8
mov eax, dword [ebp - 0xb4]
sub eax, 0x470175d4
je 0x408e4e
jmp 0x40810e
mov eax, dword [ebp - 0xb4]
sub eax, 0x4950eeae
je 0x4087bf
jmp 0x408124
mov eax, dword [ebp - 0xb4]
sub eax, 0x50301900
je 0x408328
jmp 0x40813a
mov eax, dword [ebp - 0xb4]
sub eax, 0x5409ff43
je 0x408e3c
jmp 0x408150
mov eax, dword [ebp - 0xb4]
sub eax, 0x5c2e0471
je 0x408280
jmp 0x408166
mov eax, dword [ebp - 0xb4]
sub eax, 0x5c7df66c
je 0x408205
jmp 0x40817c
mov eax, dword [ebp - 0xb4]
sub eax, 0x5fb6529c
je 0x408d67
jmp 0x408192
mov eax, dword [ebp - 0xb4]
sub eax, 0x5fe53cd0
je 0x408cad
jmp 0x4081a8
mov eax, dword [ebp - 0xb4]
sub eax, 0x6be44688
je 0x40845b
jmp 0x4081be
mov eax, dword [ebp - 0xb4]
sub eax, 0x71fce842
je 0x4088c9
jmp 0x4081d4
mov eax, dword [ebp - 0xb4]
sub eax, 0x7ba22149
je 0x40865a
jmp 0x4081ea
mov eax, dword [ebp - 0xb4]
sub eax, 0x7c78d334
je 0x408b11
jmp 0x408200
jmp 0x408e58
mov eax, dword [ebp - 0xb0]
push eax
sub esp, 0x100
mov ecx, esp
mov dword [ebp - 0x98], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x94], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x90], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x8c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x88], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x84], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x80], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x7c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x78], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x9c], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0xac], 0x5c2e0471
jmp 0x408e58
lea eax, [ebp - 0x18]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.0041ce50
add esp, 0xc
mov eax, dword [ebp - 0x9c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0xa4], eax
mov eax, 0x40918489
mov ecx, 0xa2e38d5c
cmp dword [ebp - 0xa4], 0
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x408e58
mov dword [ebp - 0xac], 0x98d155c0
jmp 0x408e58
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ebp - 0xa0]
lea eax, [ebp - 0x18]
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
lea eax, [ebp - 0x18]
mov dword [ebp - 0x70], eax
mov dword [ebp - 0xac], 0x50301900
jmp 0x408e58
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0xac], 0x15879e1e
jmp 0x408e58
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x68]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov eax, dword [ebp - 0x98]
xor ecx, ecx
sub esp, 0x1c
mov dword [esp], eax
mov dword [esp + 4], 0x80000000
mov dword [esp + 8], 1
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 3
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov ecx, eax
mov eax, dword [ebp - 0x94]
mov dword [eax], ecx
mov edx, dword [ebp - 0x94]
mov esi, 0xffffffff
mov eax, 0x941a2d2a
mov ecx, 0x2a8edcf4
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x408e58
mov ecx, dword [0x433564]
mov eax, dword [0x433560]
mov edx, ecx
sub edx, 0x7e3975d3
sub edx, 1
add edx, 0x7e3975d3
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, 0x21ef4c26
mov ecx, 0x6be44688
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x408e58
mov eax, dword [0x433564]
mov ecx, dword [0x433560]
mov edx, eax
sub edx, 0x51f40aa9
sub edx, 1
add edx, 0x51f40aa9
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, 0x21ef4c26
mov ecx, 0x84cafe47
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x408e58
mov dword [ebp - 0xac], 0x98d155c0
jmp 0x408e58
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0xac], 0xc0d6735b
jmp 0x408e58
mov eax, dword [0x433564]
mov ecx, dword [0x433560]
mov edx, eax
add edx, 0x7b7a44dc
sub edx, 1
sub edx, 0x7b7a44dc
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, 0x91d81362
mov ecx, 0x2536ff15
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x408e58
mov eax, dword [ebp - 0x64]
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 ecx, dword [0x433564]
mov eax, dword [0x433560]
mov edx, ecx
add edx, 0x60531cbf
sub edx, 1
sub edx, 0x60531cbf
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, 0x91d81362
mov ecx, 0xf357e61e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x408e58
mov dword [ebp - 0xac], 0x2f2a9e59
jmp 0x408e58
mov eax, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x60]
mov dword [eax], ecx
mov edx, dword [ebp - 0x90]
mov eax, 0x457883f0
mov ecx, 0x7ba22149
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x408e58
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0xac], 0xf2c37dbf
jmp 0x408e58
mov eax, dword [ebp - 0x5c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xac], 0x8b35283e
jmp 0x408e58
mov dword [ebp - 0xac], 0x98d155c0
jmp 0x408e58
mov ecx, dword [0x433564]
mov eax, dword [0x433560]
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, 0x31646b9
mov ecx, 0x20231748
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x408e58
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov dword [ebp - 0x58], eax
mov ecx, dword [0x433564]
mov eax, dword [0x433560]
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, 0x31646b9
mov ecx, 0xff99262d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x408e58
mov dword [ebp - 0xac], 0x2694e55a
jmp 0x408e58
mov eax, dword [ebp - 0x58]
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 - 0x8c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xa8]
mov eax, dword [ebp - 0x88]
mov dword [eax], ecx
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
add eax, 0x3c
mov dword [ebp - 0x50], eax
mov dword [ebp - 0xac], 0x4950eeae
jmp 0x408e58
mov eax, dword [ebp - 0x50]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x54]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, edx
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [ebp - 0x84]
mov dword [eax], ecx
mov eax, dword [ebp - 0x80]
mov word [eax], 0
mov dword [ebp - 0xac], 0x856e3d59
jmp 0x408e58
mov eax, dword [ebp - 0x80]
movzx eax, word [eax]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0xac], 0x267d5f0a
jmp 0x408e58
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0xac], 0x2ea4fc78
jmp 0x408e58
mov eax, dword [ebp - 0x48]
movzx esi, word [eax + 6]
mov edx, dword [ebp - 0x4c]
mov eax, 0xd4ec6f9c
mov ecx, 0xb2c8572
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x408e58
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x18
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
movzx eax, word [eax + 0x14]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0xac], 0xddb6b5ee
jmp 0x408e58
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
add ecx, 0xea360b6f
add ecx, eax
sub ecx, 0xea360b6f
mov eax, dword [ebp - 0x80]
movzx eax, word [eax]
imul eax, eax, 0x28
add ecx, 0xa2264f3
add ecx, eax
sub ecx, 0xa2264f3
mov eax, dword [ebp - 0x7c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0xac], 0x71fce842
jmp 0x408e58
mov ecx, dword [0x433564]
mov eax, dword [0x433560]
mov edx, ecx
add edx, 0x7d07553b
sub edx, 1
sub edx, 0x7d07553b
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, 0x2ec47ac1
mov ecx, 0xe79ddadf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x408e58
mov ecx, dword [ebp - 0x3c]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x42b959
call fcn.00420750
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x35], al
mov eax, dword [0x433564]
mov ecx, dword [0x433560]
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, 0x2ec47ac1
mov ecx, 0x9f61e14a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x408e58
mov dl, byte [ebp - 0x35]
mov eax, 0x9bb54407
mov ecx, 0x7c78d334
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x408e58
mov eax, dword [ebp - 0x78]
mov dword [eax], 0
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0xa8]
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add edx, 0x22908012
add edx, eax
sub edx, 0x22908012
mov eax, dword [ebp - 0x78]
sub esp, 0x10
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x40
mov dword [esp + 0xc], eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0xac], 0x20821db7
jmp 0x408e58
mov eax, dword [ebp - 0x34]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x74]
mov byte [eax], cl
mov ecx, dword [ebp - 0xa8]
mov eax, dword [ebp - 0x7c]
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 - 0x8c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
sub ecx, eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0041cfb0
add esp, 0xc
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xac], 0xecafbcd2
jmp 0x408e58
mov esi, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
sub esi, 0x694ec354
add esi, eax
add esi, 0x694ec354
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
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 - 0x74]
mov byte [eax], cl
mov dword [ebp - 0xac], 0x7c78d334
jmp 0x408e58
mov dword [ebp - 0xac], 0xbb6a82f7
jmp 0x408e58
mov ecx, dword [0x433564]
mov eax, dword [0x433560]
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, 0x5409ff43
mov ecx, 0x92fa4d72
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x408e58
mov eax, dword [ebp - 0x80]
mov ax, word [eax]
xor ecx, ecx
sub cx, 1
sub ax, cx
mov word [ebp - 0x1e], ax
mov ecx, dword [0x433564]
mov eax, dword [0x433560]
mov edx, ecx
sub edx, 0xd4e07606
sub edx, 1
add edx, 0xd4e07606
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, 0x5409ff43
mov ecx, 0x5fa6f00
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x408e58
mov dword [ebp - 0xac], 0xdc307b35
jmp 0x408e58
mov eax, dword [ebp - 0x80]
mov cx, word [ebp - 0x1e]
mov word [eax], cx
mov dword [ebp - 0xac], 0xfa5b483d
jmp 0x408e58
mov ecx, dword [0x433564]
mov eax, dword [0x433560]
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, 0x470175d4
mov ecx, 0x5fe53cd0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x408e58
mov ecx, dword [0x433564]
mov eax, dword [0x433560]
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, 0x470175d4
mov ecx, 0xd4b2834
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x408e58
mov dword [ebp - 0xac], 0x856e3d59
jmp 0x408e58
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xac], 0xf44b002f
jmp 0x408e58
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xac], 0x5fb6529c
jmp 0x408e58
mov eax, dword [ebp - 0x1c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0xa0]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xac], 0x98d155c0
jmp 0x408e58
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.0041c160
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov dword [ebp - 0xac], 0x6be44688
jmp 0x408e58
mov eax, dword [ebp - 0x64]
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 - 0xac], 0x2536ff15
jmp 0x408e58
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xac], 0x20231748
jmp 0x408e58
mov ecx, dword [ebp - 0x3c]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x42b959
call fcn.00420750
add esp, 8
mov dword [ebp - 0xac], 0xe79ddadf
jmp 0x408e58
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0xac], 0x92fa4d72
jmp 0x408e58
mov dword [ebp - 0xac], 0x5fe53cd0
jmp 0x407d98