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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x1b8
mov eax, dword [ebp + 8]
mov eax, dword [0x435080]
xor eax, ebp
mov dword [ebp - 0xc], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x170], eax
mov dword [ebp - 0x1a0], 0x79b02f9f
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x1a4], eax
sub eax, 0x84449770
je 0x406c18
jmp 0x40613a
mov eax, dword [ebp - 0x1a4]
sub eax, 0x907fc16c
je 0x406718
jmp 0x406150
mov eax, dword [ebp - 0x1a4]
sub eax, 0x9116c50f
je 0x4066e8
jmp 0x406166
mov eax, dword [ebp - 0x1a4]
sub eax, 0x94274b91
je 0x407307
jmp 0x40617c
mov eax, dword [ebp - 0x1a4]
sub eax, 0x966974d5
je 0x406709
jmp 0x406192
mov eax, dword [ebp - 0x1a4]
sub eax, 0x98028cea
je 0x4072cb
jmp 0x4061a8
mov eax, dword [ebp - 0x1a4]
sub eax, 0xa1356325
je 0x406ea3
jmp 0x4061be
mov eax, dword [ebp - 0x1a4]
sub eax, 0xa3cb4a26
je 0x4072f8
jmp 0x4061d4
mov eax, dword [ebp - 0x1a4]
sub eax, 0xaab0209a
je 0x4071fe
jmp 0x4061ea
mov eax, dword [ebp - 0x1a4]
sub eax, 0xad926d14
je 0x4068e1
jmp 0x406200
mov eax, dword [ebp - 0x1a4]
sub eax, 0xb5b4efd2
je 0x406cc4
jmp 0x406216
mov eax, dword [ebp - 0x1a4]
sub eax, 0xbd17a438
je 0x4067eb
jmp 0x40622c
mov eax, dword [ebp - 0x1a4]
sub eax, 0xbf01e546
je 0x4069f6
jmp 0x406242
mov eax, dword [ebp - 0x1a4]
sub eax, 0xc818ed69
je 0x406d0c
jmp 0x406258
mov eax, dword [ebp - 0x1a4]
sub eax, 0xc88421aa
je 0x406af4
jmp 0x40626e
mov eax, dword [ebp - 0x1a4]
sub eax, 0xcb1ea1f9
je 0x406be8
jmp 0x406284
mov eax, dword [ebp - 0x1a4]
sub eax, 0xd62ea470
je 0x406f5d
jmp 0x40629a
mov eax, dword [ebp - 0x1a4]
sub eax, 0xdef9cd75
je 0x406b66
jmp 0x4062b0
mov eax, dword [ebp - 0x1a4]
sub eax, 0xe0bfb39d
je 0x406c9d
jmp 0x4062c6
mov eax, dword [ebp - 0x1a4]
sub eax, 0xe2687c1e
je 0x40661e
jmp 0x4062dc
mov eax, dword [ebp - 0x1a4]
sub eax, 0xe4e3c7ff
je 0x406d2d
jmp 0x4062f2
mov eax, dword [ebp - 0x1a4]
sub eax, 0xe71c6c5b
je 0x407079
jmp 0x406308
mov eax, dword [ebp - 0x1a4]
sub eax, 0xe794c048
je 0x406939
jmp 0x40631e
mov eax, dword [ebp - 0x1a4]
sub eax, 0xec3d6411
je 0x406daa
jmp 0x406334
mov eax, dword [ebp - 0x1a4]
sub eax, 0xec855112
je 0x4072e9
jmp 0x40634a
mov eax, dword [ebp - 0x1a4]
sub eax, 0xf12eedf9
je 0x4071c9
jmp 0x406360
mov eax, dword [ebp - 0x1a4]
sub eax, 0xf18f5e2d
je 0x406c27
jmp 0x406376
mov eax, dword [ebp - 0x1a4]
sub eax, 0xf7424a6f
je 0x406fe2
jmp 0x40638c
mov eax, dword [ebp - 0x1a4]
sub eax, 0xf785a4d3
je 0x406760
jmp 0x4063a2
mov eax, dword [ebp - 0x1a4]
sub eax, 0xfe849ff4
je 0x4068f0
jmp 0x4063b8
mov eax, dword [ebp - 0x1a4]
sub eax, 0x616e27b
je 0x406cb5
jmp 0x4063ce
mov eax, dword [ebp - 0x1a4]
sub eax, 0x99c5b66
je 0x4066d9
jmp 0x4063e4
mov eax, dword [ebp - 0x1a4]
sub eax, 0x9eeb04c
je 0x40677d
jmp 0x4063fa
mov eax, dword [ebp - 0x1a4]
sub eax, 0x1172b82b
je 0x407088
jmp 0x406410
mov eax, dword [ebp - 0x1a4]
sub eax, 0x1d67c9ac
je 0x4071ea
jmp 0x406426
mov eax, dword [ebp - 0x1a4]
sub eax, 0x1ec51ce2
je 0x4071ba
jmp 0x40643c
mov eax, dword [ebp - 0x1a4]
sub eax, 0x20a87f55
je 0x40724e
jmp 0x406452
mov eax, dword [ebp - 0x1a4]
sub eax, 0x2425f22b
je 0x406d63
jmp 0x406468
mov eax, dword [ebp - 0x1a4]
sub eax, 0x279cd04d
je 0x4068c0
jmp 0x40647e
mov eax, dword [ebp - 0x1a4]
sub eax, 0x2975d069
je 0x4072da
jmp 0x406494
mov eax, dword [ebp - 0x1a4]
sub eax, 0x29fb6b91
je 0x40715d
jmp 0x4064aa
mov eax, dword [ebp - 0x1a4]
sub eax, 0x2bfe0108
je 0x4070a5
jmp 0x4064c0
mov eax, dword [ebp - 0x1a4]
sub eax, 0x2f8ebf04
je 0x4069a5
jmp 0x4064d6
mov eax, dword [ebp - 0x1a4]
sub eax, 0x39dcd308
je 0x406ce0
jmp 0x4064ec
mov eax, dword [ebp - 0x1a4]
sub eax, 0x4184c693
je 0x4070b4
jmp 0x406502
mov eax, dword [ebp - 0x1a4]
sub eax, 0x4ad940d8
je 0x4070e7
jmp 0x406518
mov eax, dword [ebp - 0x1a4]
sub eax, 0x51b907bb
je 0x406996
jmp 0x40652e
mov eax, dword [ebp - 0x1a4]
sub eax, 0x5b59c65b
je 0x406de9
jmp 0x406544
mov eax, dword [ebp - 0x1a4]
sub eax, 0x61346ae2
je 0x406f10
jmp 0x40655a
mov eax, dword [ebp - 0x1a4]
sub eax, 0x65009a63
je 0x406f6c
jmp 0x406570
mov eax, dword [ebp - 0x1a4]
sub eax, 0x6cc6a1a9
je 0x406a6c
jmp 0x406586
mov eax, dword [ebp - 0x1a4]
sub eax, 0x771aeb34
je 0x406bf7
jmp 0x40659c
mov eax, dword [ebp - 0x1a4]
sub eax, 0x79b02f9f
je 0x4065cd
jmp 0x4065b2
mov eax, dword [ebp - 0x1a4]
sub eax, 0x7c828e76
je 0x406b15
jmp 0x4065c8
jmp 0x407311
mov eax, dword [0x436554]
mov ecx, dword [0x436550]
mov edx, eax
sub edx, 0x78bb7770
sub edx, 1
add edx, 0x78bb7770
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, 0xaab0209a
mov ecx, 0xe2687c1e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x174], eax
lea eax, [ebp - 0x11c]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.0041fbd0
mov eax, dword [ebp + 8]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
sub esp, 4
mov dword [ebp - 0x178], eax
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x16c], eax
mov ecx, dword [0x436554]
mov eax, dword [0x436550]
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, 0xaab0209a
mov ecx, 0x99c5b66
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
mov dword [ebp - 0x1a0], 0x9116c50f
jmp 0x407311
mov edx, dword [ebp - 0x16c]
mov eax, 0x966974d5
mov ecx, 0x907fc16c
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
mov dword [ebp - 0x1a0], 0x1d67c9ac
jmp 0x407311
mov ecx, dword [ebp - 0x178]
mov edx, dword [ebp - 0x174]
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 - 0x168], eax
mov dword [ebp - 0x1a0], 0xf785a4d3
jmp 0x407311
mov eax, dword [ebp - 0x168]
mov eax, dword [eax]
mov dword [ebp - 0x17c], eax
mov dword [ebp - 0x1a0], 0x9eeb04c
jmp 0x407311
mov ecx, dword [0x436554]
mov eax, dword [0x436550]
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, 0x20a87f55
mov ecx, 0xbd17a438
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0x178]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
sub esp, 0xc
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 - 0x180], eax
mov eax, 0xffffffff
cmp dword [ebp - 0x180], eax
sete al
and al, 1
mov byte [ebp - 0x161], al
mov eax, dword [0x436554]
mov ecx, dword [0x436550]
mov edx, eax
add edx, 0xb547c278
sub edx, 1
sub edx, 0xb547c278
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, 0x20a87f55
mov ecx, 0x279cd04d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
mov dl, byte [ebp - 0x161]
mov eax, 0xfe849ff4
mov ecx, 0xad926d14
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
mov dword [ebp - 0x1a0], 0x1d67c9ac
jmp 0x407311
mov eax, dword [0x436554]
mov ecx, dword [0x436550]
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, 0x98028cea
mov ecx, 0xe794c048
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x160], eax
mov eax, dword [0x436554]
mov ecx, dword [0x436550]
mov edx, eax
sub edx, 0x72e0e662
sub edx, 1
add edx, 0x72e0e662
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, 0x98028cea
mov ecx, 0x51b907bb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
mov dword [ebp - 0x1a0], 0x2f8ebf04
jmp 0x407311
mov eax, dword [ebp - 0x160]
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 - 0x184], eax
mov dword [ebp - 0x1a0], 0xbf01e546
jmp 0x407311
mov ecx, dword [0x436554]
mov eax, dword [0x436550]
mov edx, ecx
sub edx, 0x46bdd3cd
sub edx, 1
add edx, 0x46bdd3cd
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, 0x2975d069
mov ecx, 0x6cc6a1a9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
cmp dword [ebp - 0x184], 0
setne al
and al, 1
mov byte [ebp - 0x159], al
mov ecx, dword [0x436554]
mov eax, dword [0x436550]
mov edx, ecx
sub edx, 0x73c7da3a
sub edx, 1
add edx, 0x73c7da3a
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, 0x2975d069
mov ecx, 0xc88421aa
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
mov dl, byte [ebp - 0x159]
mov eax, 0x7c828e76
mov ecx, 0xf18f5e2d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
mov eax, dword [0x436554]
mov ecx, dword [0x436550]
mov edx, eax
sub edx, 0x30a09aff
sub edx, 1
add edx, 0x30a09aff
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, 0xec855112
mov ecx, 0xdef9cd75
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x158], eax
mov ecx, dword [0x436554]
mov eax, dword [0x436550]
mov edx, ecx
sub edx, 0x498b9696
sub edx, 1
add edx, 0x498b9696
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, 0xec855112
mov ecx, 0xcb1ea1f9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
mov dword [ebp - 0x1a0], 0x771aeb34
jmp 0x407311
mov eax, dword [ebp - 0x158]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [ebp - 0x1a0], 0x84449770
jmp 0x407311
mov dword [ebp - 0x1a0], 0x1d67c9ac
jmp 0x407311
mov eax, dword [ebp - 0x184]
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 - 0x188], eax
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0x18c]
mov ecx, dword [ecx + 0x3c]
sub eax, 0x958e040c
add eax, ecx
add eax, 0x958e040c
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x1a0], 0xe0bfb39d
jmp 0x407311
mov word [ebp - 0x192], 0
mov dword [ebp - 0x1a0], 0x616e27b
jmp 0x407311
mov dword [ebp - 0x1a0], 0xb5b4efd2
jmp 0x407311
movzx eax, word [ebp - 0x192]
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x1a0], 0x39dcd308
jmp 0x407311
mov eax, dword [ebp - 0x190]
movzx ecx, word [eax + 6]
mov eax, dword [ebp - 0x154]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x14d], al
mov dword [ebp - 0x1a0], 0xc818ed69
jmp 0x407311
mov dl, byte [ebp - 0x14d]
mov eax, 0x4184c693
mov ecx, 0xe4e3c7ff
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
mov eax, dword [ebp - 0x190]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x18
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x1a0], 0x2425f22b
jmp 0x407311
mov eax, dword [ebp - 0x148]
movzx ecx, word [eax + 0x14]
mov eax, dword [ebp - 0x14c]
sub eax, 0xf861be55
add eax, ecx
add eax, 0xf861be55
movzx ecx, word [ebp - 0x192]
imul ecx, ecx, 0x28
sub eax, 0x3876e1c3
add eax, ecx
add eax, 0x3876e1c3
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x1a0], 0xec3d6411
jmp 0x407311
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0x198], eax
mov ecx, dword [ebp - 0x198]
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x42e543
call fcn.004234d0
mov edx, eax
mov eax, 0x5b59c65b
mov ecx, 0xd62ea470
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
mov dword [ebp - 0x120], 0
mov eax, dword [ebp - 0x198]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x198]
mov eax, dword [eax + 0xc]
add edx, 0x3f070e9
add edx, eax
sub edx, 0x3f070e9
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 - 0x199], al
mov eax, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0x198]
mov edx, dword [ecx + 0xc]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x188]
mov ecx, dword [ebp - 0x198]
mov ecx, dword [ecx + 0xc]
sub eax, 0x70798cd4
add eax, ecx
add eax, 0x70798cd4
mov dword [ebp - 0x13c], eax
mov eax, dword [ebp - 0x198]
mov eax, dword [eax + 8]
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x1a0], 0xa1356325
jmp 0x407311
mov edx, dword [ebp - 0x140]
mov ecx, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x138]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0041fd30
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x198]
mov eax, dword [eax + 8]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0x198]
mov ecx, dword [ecx + 0xc]
sub eax, 0xea988c26
add eax, ecx
add eax, 0xea988c26
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x1a0], 0x61346ae2
jmp 0x407311
mov ecx, dword [ebp - 0x134]
mov edx, dword [ebp - 0x130]
mov esi, dword [ebp - 0x12c]
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 - 0x199], al
mov dword [ebp - 0x1a0], 0xd62ea470
jmp 0x407311
mov dword [ebp - 0x1a0], 0x65009a63
jmp 0x407311
mov ecx, dword [0x436554]
mov eax, dword [0x436550]
mov edx, ecx
sub edx, 0xadc0900b
sub edx, 1
add edx, 0xadc0900b
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, 0xa3cb4a26
mov ecx, 0xf7424a6f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
mov ax, word [ebp - 0x192]
xor ecx, ecx
sub cx, ax
xor eax, eax
sub ax, 1
add cx, ax
xor eax, eax
sub ax, cx
mov word [ebp - 0x126], ax
mov ecx, dword [0x436554]
mov eax, dword [0x436550]
mov edx, ecx
sub edx, 0x3faa6222
sub edx, 1
add edx, 0x3faa6222
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, 0xa3cb4a26
mov ecx, 0xe71c6c5b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
mov dword [ebp - 0x1a0], 0x1172b82b
jmp 0x407311
mov ax, word [ebp - 0x126]
mov word [ebp - 0x192], ax
mov dword [ebp - 0x1a0], 0x2bfe0108
jmp 0x407311
mov dword [ebp - 0x1a0], 0xb5b4efd2
jmp 0x407311
mov eax, dword [ebp - 0x180]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov eax, dword [ebp - 0x184]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [ebp - 0x1a0], 0x4ad940d8
jmp 0x407311
mov ecx, dword [0x436554]
mov eax, dword [0x436550]
mov edx, ecx
sub edx, 0x549a482d
sub edx, 1
add edx, 0x549a482d
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, 0x94274b91
mov ecx, 0x29fb6b91
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x124], eax
mov eax, dword [0x436554]
mov ecx, dword [0x436550]
mov edx, eax
add edx, 0x9e3ffd3b
sub edx, 1
sub edx, 0x9e3ffd3b
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, 0x94274b91
mov ecx, 0x1ec51ce2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x407311
mov dword [ebp - 0x1a0], 0xf12eedf9
jmp 0x407311
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [ebp - 0x1a0], 0x1d67c9ac
jmp 0x407311
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.0041eee0
add esp, 0x1b8
pop esi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x174], eax
lea eax, [ebp - 0x11c]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.0041fbd0
mov eax, dword [ebp + 8]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
sub esp, 4
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x1a0], 0xe2687c1e
jmp 0x407311
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0x178]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
sub esp, 0xc
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 - 0x180], eax
mov dword [ebp - 0x1a0], 0xbd17a438
jmp 0x407311
mov dword [ebp - 0x1a0], 0xe794c048
jmp 0x407311
mov dword [ebp - 0x1a0], 0x6cc6a1a9
jmp 0x407311
mov dword [ebp - 0x1a0], 0xdef9cd75
jmp 0x407311
mov dword [ebp - 0x1a0], 0xf7424a6f
jmp 0x407311
mov dword [ebp - 0x1a0], 0x29fb6b91
jmp 0x40611e