Function at 0x4077a0
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 [0x438080]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x1a8], 0x96093ca1
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x1b0], eax
sub eax, 0x8b4cf9e9
je 0x408f59
jmp 0x4077e4
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8c4e0346
je 0x408f17
jmp 0x4077fa
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8c9c36bd
je 0x408030
jmp 0x407810
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8e967744
je 0x408da9
jmp 0x407826
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8f49b384
je 0x408e62
jmp 0x40783c
mov eax, dword [ebp - 0x1b0]
sub eax, 0x9385eaf9
je 0x408d3a
jmp 0x407852
mov eax, dword [ebp - 0x1b0]
sub eax, 0x93cd1c53
je 0x40866c
jmp 0x407868
mov eax, dword [ebp - 0x1b0]
sub eax, 0x96093ca1
je 0x407dc1
jmp 0x40787e
mov eax, dword [ebp - 0x1b0]
sub eax, 0x9d0618a1
je 0x408ce9
jmp 0x407894
mov eax, dword [ebp - 0x1b0]
sub eax, 0x9d5676e6
je 0x407ec1
jmp 0x4078aa
mov eax, dword [ebp - 0x1b0]
sub eax, 0xaab20c89
je 0x408177
jmp 0x4078c0
mov eax, dword [ebp - 0x1b0]
sub eax, 0xaaf3acfe
je 0x408198
jmp 0x4078d6
mov eax, dword [ebp - 0x1b0]
sub eax, 0xb03801ef
je 0x4088b4
jmp 0x4078ec
mov eax, dword [ebp - 0x1b0]
sub eax, 0xb3104b7d
je 0x408ea5
jmp 0x407902
mov eax, dword [ebp - 0x1b0]
sub eax, 0xb8ffb432
je 0x408ab2
jmp 0x407918
mov eax, dword [ebp - 0x1b0]
sub eax, 0xbc01d097
je 0x408c79
jmp 0x40792e
mov eax, dword [ebp - 0x1b0]
sub eax, 0xbd09f06a
je 0x408db8
jmp 0x407944
mov eax, dword [ebp - 0x1b0]
sub eax, 0xc0ea793a
je 0x408b80
jmp 0x40795a
mov eax, dword [ebp - 0x1b0]
sub eax, 0xc6a6be90
je 0x4081b3
jmp 0x407970
mov eax, dword [ebp - 0x1b0]
sub eax, 0xc837890e
je 0x408dc9
jmp 0x407986
mov eax, dword [ebp - 0x1b0]
sub eax, 0xceb93783
je 0x408154
jmp 0x40799c
mov eax, dword [ebp - 0x1b0]
sub eax, 0xd4c5d4bc
je 0x4083aa
jmp 0x4079b2
mov eax, dword [ebp - 0x1b0]
sub eax, 0xe0f974ad
je 0x40844f
jmp 0x4079c8
mov eax, dword [ebp - 0x1b0]
sub eax, 0xe3ecf19a
je 0x4085ed
jmp 0x4079de
mov eax, dword [ebp - 0x1b0]
sub eax, 0xe4649e76
je 0x40876a
jmp 0x4079f4
mov eax, dword [ebp - 0x1b0]
sub eax, 0xe5725ba5
je 0x4086ef
jmp 0x407a0a
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf94b19dc
je 0x407e12
jmp 0x407a20
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf99aa7c2
je 0x408d76
jmp 0x407a36
mov eax, dword [ebp - 0x1b0]
sub eax, 0xfd7e4194
je 0x4084e1
jmp 0x407a4c
mov eax, dword [ebp - 0x1b0]
sub eax, 0xe1418
je 0x408df0
jmp 0x407a62
mov eax, dword [ebp - 0x1b0]
sub eax, 0x13b08fea
je 0x4087b3
jmp 0x407a78
mov eax, dword [ebp - 0x1b0]
sub eax, 0x13e07ddb
je 0x408229
jmp 0x407a8e
mov eax, dword [ebp - 0x1b0]
sub eax, 0x17252765
je 0x40828c
jmp 0x407aa4
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1af0856c
je 0x40839b
jmp 0x407aba
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1be63f9e
je 0x408c98
jmp 0x407ad0
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1d407d53
je 0x4089fb
jmp 0x407ae6
mov eax, dword [ebp - 0x1b0]
sub eax, 0x205a0b32
je 0x408d49
jmp 0x407afc
mov eax, dword [ebp - 0x1b0]
sub eax, 0x2092cd67
je 0x408fcd
jmp 0x407b12
mov eax, dword [ebp - 0x1b0]
sub eax, 0x23d6bcd3
je 0x4084d2
jmp 0x407b28
mov eax, dword [ebp - 0x1b0]
sub eax, 0x26a743b3
je 0x407f99
jmp 0x407b3e
mov eax, dword [ebp - 0x1b0]
sub eax, 0x299fdc15
je 0x408b8f
jmp 0x407b54
mov eax, dword [ebp - 0x1b0]
sub eax, 0x2ae98871
je 0x408081
jmp 0x407b6a
mov eax, dword [ebp - 0x1b0]
sub eax, 0x2d6bd7b7
je 0x4089b2
jmp 0x407b80
mov eax, dword [ebp - 0x1b0]
sub eax, 0x323f8a0e
je 0x408ac1
jmp 0x407b96
mov eax, dword [ebp - 0x1b0]
sub eax, 0x3451bf61
je 0x408145
jmp 0x407bac
mov eax, dword [ebp - 0x1b0]
sub eax, 0x34ea9483
je 0x407ff2
jmp 0x407bc2
mov eax, dword [ebp - 0x1b0]
sub eax, 0x35a594b8
je 0x408fb8
jmp 0x407bd8
mov eax, dword [ebp - 0x1b0]
sub eax, 0x35baab77
je 0x408c05
jmp 0x407bee
mov eax, dword [ebp - 0x1b0]
sub eax, 0x374eca73
je 0x408557
jmp 0x407c04
mov eax, dword [ebp - 0x1b0]
sub eax, 0x3b82b6be
je 0x408fa9
jmp 0x407c1a
mov eax, dword [ebp - 0x1b0]
sub eax, 0x3d7b5cfb
je 0x408b0a
jmp 0x407c30
mov eax, dword [ebp - 0x1b0]
sub eax, 0x3d7d1c5e
je 0x408f32
jmp 0x407c46
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4130f589
je 0x4088c3
jmp 0x407c5c
mov eax, dword [ebp - 0x1b0]
sub eax, 0x447b4144
je 0x4083e1
jmp 0x407c72
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4563f0fa
je 0x408725
jmp 0x407c88
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4702a65d
je 0x408021
jmp 0x407c9e
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4767f038
je 0x40861b
jmp 0x407cb4
mov eax, dword [ebp - 0x1b0]
sub eax, 0x479f69a1
je 0x4085fc
jmp 0x407cca
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4e894a99
je 0x4082aa
jmp 0x407ce0
mov eax, dword [ebp - 0x1b0]
sub eax, 0x50450e6b
je 0x407eb2
jmp 0x407cf6
mov eax, dword [ebp - 0x1b0]
sub eax, 0x5378b573
je 0x408318
jmp 0x407d0c
mov eax, dword [ebp - 0x1b0]
sub eax, 0x59f02859
je 0x407f2d
jmp 0x407d22
mov eax, dword [ebp - 0x1b0]
sub eax, 0x5dd55e0a
je 0x408829
jmp 0x407d38
mov eax, dword [ebp - 0x1b0]
sub eax, 0x63eee45a
je 0x408c6a
jmp 0x407d4e
mov eax, dword [ebp - 0x1b0]
sub eax, 0x6584d6fb
je 0x4086ce
mov eax, dword [0x439554]
mov ecx, dword [0x439550]
mov edx, eax
add edx, 0xaab130cf
sub edx, 1
sub edx, 0xaab130cf
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, 0xc837890e
mov ecx, 0xf94b19dc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
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
mov eax, dword [0x439554]
mov ecx, dword [0x439550]
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, 0xc837890e
mov ecx, 0x50450e6b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov dword [ebp - 0x1a8], 0x9d5676e6
jmp 0x408fd7
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.00422b10
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, 0x7a6c4226
mov ecx, 0x59f02859
cmp dword [ebp - 0x198], 0
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov ecx, dword [ebp - 0x198]
mov edx, dword [ebp - 0x194]
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]
mov dword [ebp - 0x1a8], 0x26a743b3
jmp 0x408fd7
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 - 0x170], eax
mov dword [ebp - 0x1a8], 0x34ea9483
jmp 0x408fd7
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x1a0], eax
mov edx, 0xffffffff
mov eax, 0x8c9c36bd
mov ecx, 0x4702a65d
cmp dword [ebp - 0x1a0], edx
cmove eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov dword [ebp - 0x1a8], 0xbd09f06a
jmp 0x408fd7
mov eax, dword [0x439554]
mov ecx, dword [0x439550]
mov edx, eax
add edx, 0x5d806868
sub edx, 1
sub edx, 0x5d806868
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, 0xe1418
mov ecx, 0x2ae98871
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
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 - 0x1a4], eax
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x16c], eax
mov ecx, dword [0x439554]
mov eax, dword [0x439550]
mov edx, ecx
add edx, 0x525f7fc8
sub edx, 1
sub edx, 0x525f7fc8
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, 0xe1418
mov ecx, 0x3451bf61
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov dword [ebp - 0x1a8], 0xceb93783
jmp 0x408fd7
mov eax, dword [ebp - 0x16c]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x165], al
mov dword [ebp - 0x1a8], 0xaab20c89
jmp 0x408fd7
mov dl, byte [ebp - 0x165]
mov eax, 0xaaf3acfe
mov ecx, 0x4e894a99
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x1a8], 0xc6a6be90
jmp 0x408fd7
mov ecx, dword [0x439554]
mov eax, dword [0x439550]
mov edx, ecx
sub edx, 0xaca15944
sub edx, 1
add edx, 0xaca15944
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, 0x72272024
mov ecx, 0x13e07ddb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov eax, dword [ebp - 0x164]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x439554]
mov ecx, dword [0x439550]
mov edx, eax
add edx, 0xdc34dd07
sub edx, 1
sub edx, 0xdc34dd07
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, 0x72272024
mov ecx, 0x17252765
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov dword [ebp - 0x1a8], 0x71d63c76
jmp 0x408fd7
mov ecx, dword [0x439554]
mov eax, dword [0x439550]
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, 0x8f49b384
mov ecx, 0x5378b573
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov eax, dword [ebp - 0x1a4]
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 - 0x160], eax
mov eax, dword [0x439554]
mov ecx, dword [0x439550]
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, 0x8f49b384
mov ecx, 0x1af0856c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov dword [ebp - 0x1a8], 0xd4c5d4bc
jmp 0x408fd7
mov eax, dword [ebp - 0x18c]
mov ecx, dword [ebp - 0x160]
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 - 0x15c], eax
mov dword [ebp - 0x1a8], 0x447b4144
jmp 0x408fd7
mov ecx, dword [0x439554]
mov eax, dword [0x439550]
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, 0xb3104b7d
mov ecx, 0xe0f974ad
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov eax, dword [ebp - 0x188]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c]
mov ecx, dword [ebp - 0x15c]
add ecx, 0x7e4906a5
add ecx, eax
sub ecx, 0x7e4906a5
mov eax, dword [ebp - 0x184]
mov dword [eax], ecx
mov eax, dword [ebp - 0x180]
mov word [eax], 0
mov eax, dword [0x439554]
mov ecx, dword [0x439550]
mov edx, eax
sub edx, 0xfa0cd154
sub edx, 1
add edx, 0xfa0cd154
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, 0xb3104b7d
mov ecx, 0x23d6bcd3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov dword [ebp - 0x1a8], 0xfd7e4194
jmp 0x408fd7
mov ecx, dword [0x439554]
mov eax, dword [0x439550]
mov edx, ecx
sub edx, 0xdbb0948b
sub edx, 1
add edx, 0xdbb0948b
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, 0x6c00d139
mov ecx, 0x374eca73
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov eax, dword [ebp - 0x180]
movzx eax, word [eax]
mov dword [ebp - 0x158], eax
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
add eax, 4
mov dword [ebp - 0x154], eax
mov ecx, dword [0x439554]
mov eax, dword [0x439550]
mov edx, ecx
sub edx, 0x90e5ab7f
sub edx, 1
add edx, 0x90e5ab7f
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, 0x6c00d139
mov ecx, 0xe3ecf19a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov dword [ebp - 0x1a8], 0x479f69a1
jmp 0x408fd7
mov eax, dword [ebp - 0x154]
movzx eax, word [eax + 2]
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x1a8], 0x4767f038
jmp 0x408fd7
mov eax, dword [0x439554]
mov ecx, dword [0x439550]
mov edx, eax
add edx, 0x6f3c3566
sub edx, 1
sub edx, 0x6f3c3566
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, 0x8c4e0346
mov ecx, 0x93cd1c53
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov eax, dword [ebp - 0x158]
mov ecx, dword [ebp - 0x150]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x149], al
mov eax, dword [0x439554]
mov ecx, dword [0x439550]
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, 0x8c4e0346
mov ecx, 0x6584d6fb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, 0x18
sub eax, ecx
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
movzx eax, word [eax + 0x14]
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x1a8], 0x4563f0fa
jmp 0x408fd7
mov eax, dword [ebp - 0x148]
mov ecx, dword [ebp - 0x144]
sub eax, 0x65304e3a
add eax, ecx
add eax, 0x65304e3a
mov ecx, dword [ebp - 0x180]
movzx ecx, word [ecx]
imul ecx, ecx, 0x28
add eax, 0x188ec239
add eax, ecx
sub eax, 0x188ec239
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x1a8], 0xe4649e76
jmp 0x408fd7
mov eax, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0x140]
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], 0x431856
call fcn.00426410
add esp, 8
mov edx, eax
mov eax, 0x13b08fea
mov ecx, 0x323f8a0e
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov ecx, dword [0x439554]
mov eax, dword [0x439550]
mov edx, ecx
sub edx, 0x486fa7f4
sub edx, 1
add edx, 0x486fa7f4
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, 0x3d7d1c5e
mov ecx, 0x5dd55e0a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov eax, dword [ebp - 0x178]
mov dword [eax], 0
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x13c], eax
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x134], eax
mov eax, dword [0x439554]
mov ecx, dword [0x439550]
mov edx, eax
add edx, 0xe76ed783
sub edx, 1
sub edx, 0xe76ed783
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, 0x3d7d1c5e
mov ecx, 0xb03801ef
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov dword [ebp - 0x1a8], 0x4130f589
jmp 0x408fd7
mov edx, dword [ebp - 0x138]
mov ecx, dword [ebp - 0x134]
xor eax, eax
sub eax, ecx
sub edx, eax
mov eax, dword [ebp - 0x178]
mov ecx, dword [ebp - 0x13c]
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 edx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov ecx, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
sub edx, eax
mov eax, dword [ebp - 0x18c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add ecx, 0x5e34a8ea
add ecx, eax
sub ecx, 0x5e34a8ea
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.00422c70
add esp, 0xc
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x19c]
mov ecx, dword [ebp - 0x17c]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0xc]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x1a8], 0x2d6bd7b7
jmp 0x408fd7
mov eax, dword [0x439554]
mov ecx, dword [0x439550]
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, 0x8b4cf9e9
mov ecx, 0x1d407d53
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov eax, dword [ebp - 0x178]
mov ecx, dword [ebp - 0x130]
mov edx, dword [ebp - 0x12c]
mov esi, 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 ecx, dword [0x439554]
mov eax, dword [0x439550]
mov edx, ecx
add edx, 0xa708dca6
sub edx, 1
sub edx, 0xa708dca6
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, 0x8b4cf9e9
mov ecx, 0xb8ffb432
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov dword [ebp - 0x1a8], 0x323f8a0e
jmp 0x408fd7
mov eax, dword [0x439554]
mov ecx, dword [0x439550]
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, 0x3b82b6be
mov ecx, 0x3d7b5cfb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov ecx, dword [0x439554]
mov eax, dword [0x439550]
mov edx, ecx
sub edx, 0xd0ca1a6e
sub edx, 1
add edx, 0xd0ca1a6e
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, 0x3b82b6be
mov ecx, 0xc0ea793a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov dword [ebp - 0x1a8], 0x299fdc15
jmp 0x408fd7
mov ecx, dword [0x439554]
mov eax, dword [0x439550]
mov edx, ecx
sub edx, 0xc86a975f
sub edx, 1
add edx, 0xc86a975f
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, 0x35a594b8
mov ecx, 0x35baab77
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov eax, dword [ebp - 0x180]
mov ax, word [eax]
add ax, 0x4d81
add ax, 1
sub ax, 0x4d81
mov word [ebp - 0x122], ax
mov eax, dword [0x439554]
mov ecx, dword [0x439550]
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, 0x35a594b8
mov ecx, 0x63eee45a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov dword [ebp - 0x1a8], 0xbc01d097
jmp 0x408fd7
mov eax, dword [ebp - 0x180]
mov cx, word [ebp - 0x122]
mov word [eax], cx
mov dword [ebp - 0x1a8], 0x1be63f9e
jmp 0x408fd7
mov eax, dword [0x439554]
mov ecx, dword [0x439550]
mov edx, eax
add edx, 0x83b1a421
sub edx, 1
sub edx, 0x83b1a421
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, 0x2092cd67
mov ecx, 0x9d0618a1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov eax, dword [0x439554]
mov ecx, dword [0x439550]
mov edx, eax
add edx, 0x77059e3c
sub edx, 1
sub edx, 0x77059e3c
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, 0x2092cd67
mov ecx, 0x9385eaf9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x408fd7
mov dword [ebp - 0x1a8], 0xfd7e4194
jmp 0x408fd7
mov eax, dword [ebp - 0x1a0]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x1a8], 0xf99aa7c2
jmp 0x408fd7
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], 0x8e967744
jmp 0x408fd7
mov dword [ebp - 0x1a8], 0xbd09f06a
jmp 0x408fd7
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.00421e20
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x190], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x194], eax
mov dword [ebp - 0x1a8], 0xf94b19dc
jmp 0x408fd7
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 - 0x1a4], eax
mov dword [ebp - 0x1a8], 0x2ae98871
jmp 0x408fd7
mov eax, dword [ebp - 0x1a4]
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 - 0x1a8], 0x5378b573
jmp 0x408fd7
mov eax, dword [ebp - 0x188]
mov eax, dword [eax]
mov edx, dword [eax + 0x3c]
mov eax, dword [ebp - 0x15c]
mov eax, dword [ebp - 0x15c]
mov eax, dword [ebp - 0x15c]
mov eax, dword [ebp - 0x15c]
mov eax, dword [ebp - 0x15c]
mov ecx, dword [ebp - 0x15c]
xor eax, eax
sub eax, edx
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], 0xe0f974ad
jmp 0x408fd7
mov eax, dword [ebp - 0x158]
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x1a8], 0x93cd1c53
jmp 0x408fd7
mov eax, dword [ebp - 0x178]
mov dword [eax], 0
mov eax, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x1a8], 0x5dd55e0a
jmp 0x408fd7
mov eax, dword [ebp - 0x178]
mov ecx, dword [ebp - 0x130]
mov edx, dword [ebp - 0x12c]
mov esi, 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], 0x1d407d53
jmp 0x408fd7
mov dword [ebp - 0x1a8], 0x3d7b5cfb
jmp 0x408fd7
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x1a8], 0x35baab77
jmp 0x408fd7
mov dword [ebp - 0x1a8], 0x9d0618a1
jmp 0x4077c8