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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x1a8
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1ac], eax
mov eax, dword [0x431080]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x1a8], 0xcc566c63
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x1b0], eax
sub eax, 0x83598b2f
je 0x408ad2
jmp 0x407b74
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8442152d
je 0x40811a
jmp 0x407b8a
mov eax, dword [ebp - 0x1b0]
sub eax, 0x84d1c73a
je 0x408379
jmp 0x407ba0
mov eax, dword [ebp - 0x1b0]
sub eax, 0x84e0fb36
je 0x4085b7
jmp 0x407bb6
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8967a927
je 0x4088e5
jmp 0x407bcc
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8d7aca27
je 0x4086c4
jmp 0x407be2
mov eax, dword [ebp - 0x1b0]
sub eax, 0x951fa016
je 0x408b63
jmp 0x407bf8
mov eax, dword [ebp - 0x1b0]
sub eax, 0x973f6ce9
je 0x408665
jmp 0x407c0e
mov eax, dword [ebp - 0x1b0]
sub eax, 0x9dc37d03
je 0x408ea7
jmp 0x407c24
mov eax, dword [ebp - 0x1b0]
sub eax, 0x9fd3e812
je 0x408e29
jmp 0x407c3a
mov eax, dword [ebp - 0x1b0]
sub eax, 0xa46f3f59
je 0x4083a9
jmp 0x407c50
mov eax, dword [ebp - 0x1b0]
sub eax, 0xa7a13106
je 0x408328
jmp 0x407c66
mov eax, dword [ebp - 0x1b0]
sub eax, 0xa9644259
je 0x408d31
jmp 0x407c7c
mov eax, dword [ebp - 0x1b0]
sub eax, 0xb1bac639
je 0x408190
jmp 0x407c92
mov eax, dword [ebp - 0x1b0]
sub eax, 0xb70335c7
je 0x40820b
jmp 0x407ca8
mov eax, dword [ebp - 0x1b0]
sub eax, 0xbb59d213
je 0x4081f0
jmp 0x407cbe
mov eax, dword [ebp - 0x1b0]
sub eax, 0xbd0b2e3a
je 0x408bc4
jmp 0x407cd4
mov eax, dword [ebp - 0x1b0]
sub eax, 0xc9b392f6
je 0x408d64
jmp 0x407cea
mov eax, dword [ebp - 0x1b0]
sub eax, 0xcc566c63
je 0x408049
jmp 0x407d00
mov eax, dword [ebp - 0x1b0]
sub eax, 0xcdc6d0d9
je 0x408d16
jmp 0x407d16
mov eax, dword [ebp - 0x1b0]
sub eax, 0xcec7c225
je 0x408bd3
jmp 0x407d2c
mov eax, dword [ebp - 0x1b0]
sub eax, 0xd84a65af
je 0x4084f7
jmp 0x407d42
mov eax, dword [ebp - 0x1b0]
sub eax, 0xd8c91ff0
je 0x4080f9
jmp 0x407d58
mov eax, dword [ebp - 0x1b0]
sub eax, 0xddcdfbc4
je 0x4086d3
jmp 0x407d6e
mov eax, dword [ebp - 0x1b0]
sub eax, 0xdee0d122
je 0x4084dc
jmp 0x407d84
mov eax, dword [ebp - 0x1b0]
sub eax, 0xe45faef2
je 0x4089de
jmp 0x407d9a
mov eax, dword [ebp - 0x1b0]
sub eax, 0xe66661f4
je 0x408527
jmp 0x407db0
mov eax, dword [ebp - 0x1b0]
sub eax, 0xe7f1ee34
je 0x40839a
jmp 0x407dc6
mov eax, dword [ebp - 0x1b0]
sub eax, 0xef4e1a20
je 0x408485
jmp 0x407ddc
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf451cf9e
je 0x408d93
jmp 0x407df2
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf8ea4137
je 0x408cf5
jmp 0x407e08
mov eax, dword [ebp - 0x1b0]
sub eax, 0xffbf741d
je 0x4088f4
jmp 0x407e1e
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1074cbca
je 0x408dde
jmp 0x407e34
mov eax, dword [ebp - 0x1b0]
sub eax, 0x119ad30c
je 0x408ae1
jmp 0x407e4a
mov eax, dword [ebp - 0x1b0]
sub eax, 0x14e2cb9e
je 0x408df3
jmp 0x407e60
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1dd41832
je 0x408e0e
jmp 0x407e76
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1ef511cf
je 0x4087dc
jmp 0x407e8c
mov eax, dword [ebp - 0x1b0]
sub eax, 0x20549d93
je 0x408d75
jmp 0x407ea2
mov eax, dword [ebp - 0x1b0]
sub eax, 0x205778c8
je 0x4087fd
jmp 0x407eb8
mov eax, dword [ebp - 0x1b0]
sub eax, 0x2a5a8a0b
je 0x408caa
jmp 0x407ece
mov eax, dword [ebp - 0x1b0]
sub eax, 0x30ea905c
je 0x408912
jmp 0x407ee4
mov eax, dword [ebp - 0x1b0]
sub eax, 0x32997688
je 0x4082d7
jmp 0x407efa
mov eax, dword [ebp - 0x1b0]
sub eax, 0x35f89eae
je 0x40884e
jmp 0x407f10
mov eax, dword [ebp - 0x1b0]
sub eax, 0x3658632f
je 0x4081e1
jmp 0x407f26
mov eax, dword [ebp - 0x1b0]
sub eax, 0x3978a6fb
je 0x408542
jmp 0x407f3c
mov eax, dword [ebp - 0x1b0]
sub eax, 0x3e9cfca9
je 0x4085f6
jmp 0x407f52
mov eax, dword [ebp - 0x1b0]
sub eax, 0x44edaac0
je 0x40898d
jmp 0x407f68
mov eax, dword [ebp - 0x1b0]
sub eax, 0x478b6e8a
je 0x408c24
jmp 0x407f7e
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4b1682e9
je 0x408d84
jmp 0x407f94
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4cae9295
je 0x4084bb
jmp 0x407faa
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4f0dd0a7
je 0x408518
jmp 0x407fc0
mov eax, dword [ebp - 0x1b0]
sub eax, 0x506deee2
je 0x408ce6
jmp 0x407fd6
mov eax, dword [ebp - 0x1b0]
sub eax, 0x59211c5a
je 0x408494
jmp 0x407fec
mov eax, dword [ebp - 0x1b0]
sub eax, 0x6d02f474
je 0x408749
jmp 0x408002
mov eax, dword [ebp - 0x1b0]
sub eax, 0x75945c01
je 0x408614
jmp 0x408018
mov eax, dword [ebp - 0x1b0]
sub eax, 0x77fab496
je 0x408cb9
jmp 0x40802e
mov eax, dword [ebp - 0x1b0]
sub eax, 0x7b4927d4
je 0x4083f2
jmp 0x408044
jmp 0x408eb7
mov eax, dword [ebp - 0x1ac]
push eax
mov ecx, esp
mov dword [ebp - 0x18c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x188], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x184], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x180], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x17c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x178], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x174], ecx
mov dword [ebp - 0x190], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x194], 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.0041ba10
add esp, 0xc
mov eax, dword [ebp - 0x190]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x198], eax
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x170], eax
mov dword [ebp - 0x1a8], 0xd8c91ff0
jmp 0x408eb7
mov edx, dword [ebp - 0x170]
mov eax, 0x8442152d
mov ecx, 0xbb59d213
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov ecx, dword [0x432544]
mov eax, dword [0x432540]
mov edx, ecx
add edx, 0xb833bb02
sub edx, 1
sub edx, 0xb833bb02
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, 0x20549d93
mov ecx, 0xb1bac639
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov eax, dword [0x432544]
mov ecx, dword [0x432540]
mov edx, eax
sub edx, 0x8a17125a
sub edx, 1
add edx, 0x8a17125a
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, 0x20549d93
mov ecx, 0x3658632f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov dword [ebp - 0x1a8], 0xc9b392f6
jmp 0x408eb7
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x16c], eax
mov dword [ebp - 0x1a8], 0xb70335c7
jmp 0x408eb7
mov edx, dword [ebp - 0x194]
mov ecx, dword [ebp - 0x16c]
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 - 0x19c], eax
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0x198]
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]
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 dword [ebp - 0x1a0], eax
mov eax, 0xffffffff
cmp dword [ebp - 0x1a0], eax
sete al
and al, 1
mov byte [ebp - 0x165], al
mov dword [ebp - 0x1a8], 0x32997688
jmp 0x408eb7
mov eax, dword [0x432544]
mov ecx, dword [0x432540]
mov edx, eax
add edx, 0x722dd1c
sub edx, 1
sub edx, 0x722dd1c
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, 0x4b1682e9
mov ecx, 0xa7a13106
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov eax, dword [0x432544]
mov ecx, dword [0x432540]
mov edx, eax
sub edx, 0xf0bfca8e
sub edx, 1
add edx, 0xf0bfca8e
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, 0x4b1682e9
mov ecx, 0x84d1c73a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov dl, byte [ebp - 0x165]
mov eax, 0xa46f3f59
mov ecx, 0xe7f1ee34
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov dword [ebp - 0x1a8], 0xc9b392f6
jmp 0x408eb7
mov eax, dword [0x432544]
mov ecx, dword [0x432540]
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, 0xf451cf9e
mov ecx, 0x7b4927d4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov eax, dword [ebp - 0x1a0]
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 - 0x164], eax
mov eax, dword [0x432544]
mov ecx, dword [0x432540]
mov edx, eax
add edx, 0x2406de5
sub edx, 1
sub edx, 0x2406de5
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, 0xf451cf9e
mov ecx, 0xef4e1a20
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov dword [ebp - 0x1a8], 0x59211c5a
jmp 0x408eb7
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x1a4], eax
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x1a8], 0x4cae9295
jmp 0x408eb7
mov edx, dword [ebp - 0x160]
mov eax, 0xdee0d122
mov ecx, 0xe66661f4
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x1a8], 0xd84a65af
jmp 0x408eb7
mov eax, dword [ebp - 0x15c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a8], 0x4f0dd0a7
jmp 0x408eb7
mov dword [ebp - 0x1a8], 0xc9b392f6
jmp 0x408eb7
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x1a8], 0x3978a6fb
jmp 0x408eb7
mov eax, dword [ebp - 0x158]
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 - 0x18c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x188]
mov dword [eax], ecx
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x188]
mov eax, dword [eax]
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x1a8], 0x84e0fb36
jmp 0x408eb7
mov eax, dword [ebp - 0x150]
mov edx, dword [eax + 0x3c]
mov ecx, dword [ebp - 0x154]
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 - 0x184]
mov dword [eax], ecx
mov eax, dword [ebp - 0x180]
mov word [eax], 0
mov dword [ebp - 0x1a8], 0x3e9cfca9
jmp 0x408eb7
mov eax, dword [ebp - 0x180]
movzx eax, word [eax]
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x1a8], 0x75945c01
jmp 0x408eb7
mov eax, dword [0x432544]
mov ecx, dword [0x432540]
mov edx, eax
sub edx, 0xf6728715
sub edx, 1
add edx, 0xf6728715
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, 0x1074cbca
mov ecx, 0x973f6ce9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov dword [ebp - 0x148], eax
mov eax, dword [0x432544]
mov ecx, dword [0x432540]
mov edx, eax
sub edx, 0xe0e67612
sub edx, 1
add edx, 0xe0e67612
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, 0x1074cbca
mov ecx, 0x8d7aca27
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov dword [ebp - 0x1a8], 0xddcdfbc4
jmp 0x408eb7
mov ecx, dword [0x432544]
mov eax, dword [0x432540]
mov edx, ecx
sub edx, 0x9199dbeb
sub edx, 1
add edx, 0x9199dbeb
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, 0x14e2cb9e
mov ecx, 0x6d02f474
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov eax, dword [ebp - 0x148]
movzx ecx, word [eax + 6]
mov eax, dword [ebp - 0x14c]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x141], al
mov ecx, dword [0x432544]
mov eax, dword [0x432540]
mov edx, ecx
add edx, 0xbe87a660
sub edx, 1
sub edx, 0xbe87a660
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, 0x14e2cb9e
mov ecx, 0x1ef511cf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov dl, byte [ebp - 0x141]
mov eax, 0xf8ea4137
mov ecx, 0x205778c8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov eax, dword [0x432544]
mov ecx, dword [0x432540]
mov edx, eax
add edx, 0xa5fe14ee
sub edx, 1
sub edx, 0xa5fe14ee
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, 0x1dd41832
mov ecx, 0x35f89eae
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
sub eax, 0x5035e068
add eax, 0x18
add eax, 0x5035e068
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov dword [ebp - 0x13c], eax
mov ecx, dword [0x432544]
mov eax, dword [0x432540]
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, 0x1dd41832
mov ecx, 0x8967a927
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov dword [ebp - 0x1a8], 0xffbf741d
jmp 0x408eb7
mov eax, dword [ebp - 0x13c]
add eax, 4
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x1a8], 0x30ea905c
jmp 0x408eb7
mov eax, dword [ebp - 0x138]
movzx eax, word [eax + 0x10]
mov ecx, dword [ebp - 0x140]
add ecx, 0xa8710483
add ecx, eax
sub ecx, 0xa8710483
mov eax, dword [ebp - 0x180]
movzx eax, word [eax]
imul eax, eax, 0x28
add ecx, 0x1dbc2f2
add ecx, eax
sub ecx, 0x1dbc2f2
mov eax, dword [ebp - 0x17c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x17c]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x42a959
call fcn.0041f310
add esp, 8
mov edx, eax
mov eax, 0x44edaac0
mov ecx, 0xbd0b2e3a
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov eax, dword [0x432544]
mov ecx, dword [0x432540]
mov edx, eax
sub edx, 0x5550e9c4
sub edx, 1
add edx, 0x5550e9c4
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, 0x9fd3e812
mov ecx, 0xe45faef2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov eax, dword [ebp - 0x178]
mov dword [eax], 0
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add edx, 0x390e467f
add edx, eax
sub edx, 0x390e467f
mov eax, dword [ebp - 0x178]
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 - 0x174]
mov byte [eax], cl
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x130], eax
mov ecx, dword [0x432544]
mov eax, dword [0x432540]
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, 0x9fd3e812
mov ecx, 0x83598b2f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov dword [ebp - 0x1a8], 0x119ad30c
jmp 0x408eb7
mov ecx, dword [ebp - 0x134]
mov edx, dword [ebp - 0x130]
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 - 0x18c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
sub ecx, eax
mov eax, dword [ebp - 0x17c]
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.0041bb70
add esp, 0xc
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x1a8], 0x951fa016
jmp 0x408eb7
mov esi, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov ecx, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
sub esi, eax
mov eax, dword [ebp - 0x178]
mov ecx, dword [ebp - 0x12c]
mov edx, dword [ebp - 0x128]
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 - 0x174]
mov byte [eax], cl
mov dword [ebp - 0x1a8], 0xbd0b2e3a
jmp 0x408eb7
mov dword [ebp - 0x1a8], 0xcec7c225
jmp 0x408eb7
mov eax, dword [0x432544]
mov ecx, dword [0x432540]
mov edx, eax
sub edx, 0x1b9967c6
sub edx, 1
add edx, 0x1b9967c6
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, 0x9dc37d03
mov ecx, 0x478b6e8a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov eax, dword [ebp - 0x180]
mov ax, word [eax]
mov word [ebp - 0x122], ax
mov ecx, dword [0x432544]
mov eax, dword [0x432540]
mov edx, ecx
sub edx, 0x2120d961
sub edx, 1
add edx, 0x2120d961
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, 0x9dc37d03
mov ecx, 0x2a5a8a0b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408eb7
mov dword [ebp - 0x1a8], 0x77fab496
jmp 0x408eb7
mov cx, word [ebp - 0x122]
add cx, 0x35f8
add cx, 1
sub cx, 0x35f8
mov eax, dword [ebp - 0x180]
mov word [eax], cx
mov dword [ebp - 0x1a8], 0x506deee2
jmp 0x408eb7
mov dword [ebp - 0x1a8], 0x3e9cfca9
jmp 0x408eb7
mov eax, dword [ebp - 0x1a0]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a8], 0xcdc6d0d9
jmp 0x408eb7
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x1a8], 0xa9644259
jmp 0x408eb7
mov eax, dword [ebp - 0x120]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x194]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a8], 0xc9b392f6
jmp 0x408eb7
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.0041ad10
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov dword [ebp - 0x1a8], 0xb1bac639
jmp 0x408eb7
mov dword [ebp - 0x1a8], 0xa7a13106
jmp 0x408eb7
mov eax, dword [ebp - 0x1a0]
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 - 0x1a8], 0x7b4927d4
jmp 0x408eb7
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x1a8], 0x973f6ce9
jmp 0x408eb7
mov eax, dword [ebp - 0x148]
mov eax, dword [ebp - 0x14c]
mov dword [ebp - 0x1a8], 0x6d02f474
jmp 0x408eb7
mov eax, dword [ebp - 0x184]
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x1a8], 0x35f89eae
jmp 0x408eb7
mov eax, dword [ebp - 0x178]
mov dword [eax], 0
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x17c]
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 - 0x178]
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 - 0x174]
mov byte [eax], cl
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x1a8], 0xe45faef2
jmp 0x408eb7
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x1a8], 0x478b6e8a
jmp 0x407b58