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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x1a0
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1a4], eax
mov eax, dword [0x431080]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x1a0], 0x26a9c1d4
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x1a8], eax
sub eax, 0x81cea435
je 0x408006
jmp 0x406f34
mov eax, dword [ebp - 0x1a8]
sub eax, 0x8c043949
je 0x40809d
jmp 0x406f4a
mov eax, dword [ebp - 0x1a8]
sub eax, 0x8cf9aafe
je 0x40808e
jmp 0x406f60
mov eax, dword [ebp - 0x1a8]
sub eax, 0x8f5fafec
je 0x4076ce
jmp 0x406f76
mov eax, dword [ebp - 0x1a8]
sub eax, 0x8fe88de1
je 0x40783d
jmp 0x406f8c
mov eax, dword [ebp - 0x1a8]
sub eax, 0x94f2038e
je 0x40799d
jmp 0x406fa2
mov eax, dword [ebp - 0x1a8]
sub eax, 0x95cd6c79
je 0x407c12
jmp 0x406fb8
mov eax, dword [ebp - 0x1a8]
sub eax, 0x98495347
je 0x407eca
jmp 0x406fce
mov eax, dword [ebp - 0x1a8]
sub eax, 0x99fafa40
je 0x408226
jmp 0x406fe4
mov eax, dword [ebp - 0x1a8]
sub eax, 0x9a400094
je 0x408312
jmp 0x406ffa
mov eax, dword [ebp - 0x1a8]
sub eax, 0x9c07c0ed
je 0x4081ff
jmp 0x407010
mov eax, dword [ebp - 0x1a8]
sub eax, 0x9e041c93
je 0x4077a4
jmp 0x407026
mov eax, dword [ebp - 0x1a8]
sub eax, 0x9e726c04
je 0x408286
jmp 0x40703c
mov eax, dword [ebp - 0x1a8]
sub eax, 0xa97c51f0
je 0x407e1e
jmp 0x407052
mov eax, dword [ebp - 0x1a8]
sub eax, 0xacaa8846
je 0x40759a
jmp 0x407068
mov eax, dword [ebp - 0x1a8]
sub eax, 0xb2180b89
je 0x407f89
jmp 0x40707e
mov eax, dword [ebp - 0x1a8]
sub eax, 0xb4993638
je 0x4080ac
jmp 0x407094
mov eax, dword [ebp - 0x1a8]
sub eax, 0xbbbf668b
je 0x408262
jmp 0x4070aa
mov eax, dword [ebp - 0x1a8]
sub eax, 0xbce951a3
je 0x407d37
jmp 0x4070c0
mov eax, dword [ebp - 0x1a8]
sub eax, 0xbd7d5c3e
je 0x407d98
jmp 0x4070d6
mov eax, dword [ebp - 0x1a8]
sub eax, 0xbed2d0bf
je 0x407bf1
jmp 0x4070ec
mov eax, dword [ebp - 0x1a8]
sub eax, 0xc473cd36
je 0x4076dd
jmp 0x407102
mov eax, dword [ebp - 0x1a8]
sub eax, 0xc7e8afc8
je 0x407795
jmp 0x407118
mov eax, dword [ebp - 0x1a8]
sub eax, 0xd265eb22
je 0x40761f
jmp 0x40712e
mov eax, dword [ebp - 0x1a8]
sub eax, 0xd27668d9
je 0x407f98
jmp 0x407144
mov eax, dword [ebp - 0x1a8]
sub eax, 0xd5f238d1
je 0x407927
jmp 0x40715a
mov eax, dword [ebp - 0x1a8]
sub eax, 0xe082bedf
je 0x407a07
jmp 0x407170
mov eax, dword [ebp - 0x1a8]
sub eax, 0xe4275338
je 0x4081ee
jmp 0x407186
mov eax, dword [ebp - 0x1a8]
sub eax, 0xf0114233
je 0x407858
jmp 0x40719c
mov eax, dword [ebp - 0x1a8]
sub eax, 0xf250d07f
je 0x40781c
jmp 0x4071b2
mov eax, dword [ebp - 0x1a8]
sub eax, 0xf2e505ce
je 0x407d70
jmp 0x4071c8
mov eax, dword [ebp - 0x1a8]
sub eax, 0xf866b3bc
je 0x4074ad
jmp 0x4071de
mov eax, dword [ebp - 0x1a8]
sub eax, 0xf8eb0a60
je 0x4082b0
jmp 0x4071f4
mov eax, dword [ebp - 0x1a8]
sub eax, 0x272bc52
je 0x4081bb
jmp 0x40720a
mov eax, dword [ebp - 0x1a8]
sub eax, 0xce83d73
je 0x407704
jmp 0x407220
mov eax, dword [ebp - 0x1a8]
sub eax, 0xd84461a
je 0x407add
jmp 0x407236
mov eax, dword [ebp - 0x1a8]
sub eax, 0x14a5f6a4
je 0x40790f
jmp 0x40724c
mov eax, dword [ebp - 0x1a8]
sub eax, 0x20e6b913
je 0x407a16
jmp 0x407262
mov eax, dword [ebp - 0x1a8]
sub eax, 0x26a9c1d4
je 0x40744b
jmp 0x407278
mov eax, dword [ebp - 0x1a8]
sub eax, 0x2a26f1ef
je 0x4082a1
jmp 0x40728e
mov eax, dword [ebp - 0x1a8]
sub eax, 0x2ed76579
je 0x407b62
jmp 0x4072a4
mov eax, dword [ebp - 0x1a8]
sub eax, 0x314018c7
je 0x40817f
jmp 0x4072ba
mov eax, dword [ebp - 0x1a8]
sub eax, 0x336c5874
je 0x407579
jmp 0x4072d0
mov eax, dword [ebp - 0x1a8]
sub eax, 0x35e21e73
je 0x407879
jmp 0x4072e6
mov eax, dword [ebp - 0x1a8]
sub eax, 0x3a68d6e2
je 0x407888
jmp 0x4072fc
mov eax, dword [ebp - 0x1a8]
sub eax, 0x3fceb1a1
je 0x407f13
jmp 0x407312
mov eax, dword [ebp - 0x1a8]
sub eax, 0x41580ae5
je 0x407fb5
jmp 0x407328
mov eax, dword [ebp - 0x1a8]
sub eax, 0x44c614cc
je 0x4082bf
jmp 0x40733e
mov eax, dword [ebp - 0x1a8]
sub eax, 0x46b46d2b
je 0x4078d1
jmp 0x407354
mov eax, dword [ebp - 0x1a8]
sub eax, 0x4833b127
je 0x4074fe
jmp 0x40736a
mov eax, dword [ebp - 0x1a8]
sub eax, 0x4a5457be
je 0x407cd9
jmp 0x407380
mov eax, dword [ebp - 0x1a8]
sub eax, 0x4bcacf56
je 0x407aec
jmp 0x407396
mov eax, dword [ebp - 0x1a8]
sub eax, 0x4ed6cae9
je 0x407c63
jmp 0x4073ac
mov eax, dword [ebp - 0x1a8]
sub eax, 0x4fa97caf
je 0x4075a9
jmp 0x4073c2
mov eax, dword [ebp - 0x1a8]
sub eax, 0x501319be
je 0x407ce8
jmp 0x4073d8
mov eax, dword [ebp - 0x1a8]
sub eax, 0x58cd8b86
je 0x40818e
jmp 0x4073ee
mov eax, dword [ebp - 0x1a8]
sub eax, 0x63ff53ea
je 0x407a5f
jmp 0x407404
mov eax, dword [ebp - 0x1a8]
sub eax, 0x682599fa
je 0x4077bf
jmp 0x40741a
mov eax, dword [ebp - 0x1a8]
sub eax, 0x6bba3286
je 0x408122
jmp 0x407430
mov eax, dword [ebp - 0x1a8]
sub eax, 0x72e26173
je 0x408271
jmp 0x407446
jmp 0x40831c
mov eax, dword [ebp - 0x1a4]
push eax
mov ecx, esp
mov dword [ebp - 0x170], ecx
mov dword [ebp - 0x174], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x178], 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.0041c270
add esp, 0xc
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x16c], eax
mov dword [ebp - 0x1a0], 0xf866b3bc
jmp 0x40831c
mov eax, dword [0x43258c]
mov ecx, dword [0x432588]
mov edx, eax
add edx, 0x3a08034b
sub edx, 1
sub edx, 0x3a08034b
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, 0x9c07c0ed
mov ecx, 0x4833b127
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov eax, dword [ebp - 0x16c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x17c], eax
cmp dword [ebp - 0x17c], 0
setne al
and al, 1
mov byte [ebp - 0x165], al
mov eax, dword [0x43258c]
mov ecx, dword [0x432588]
mov edx, eax
sub edx, 0xb3166eff
sub edx, 1
add edx, 0xb3166eff
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, 0x9c07c0ed
mov ecx, 0x336c5874
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov dl, byte [ebp - 0x165]
mov eax, 0xacaa8846
mov ecx, 0x4fa97caf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov dword [ebp - 0x1a0], 0xe4275338
jmp 0x40831c
mov ecx, dword [0x43258c]
mov eax, dword [0x432588]
mov edx, ecx
sub edx, 0xb50cbeed
sub edx, 1
add edx, 0xb50cbeed
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, 0x99fafa40
mov ecx, 0xd265eb22
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov ecx, dword [ebp - 0x17c]
mov edx, dword [ebp - 0x178]
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 - 0x164], eax
mov ecx, dword [0x43258c]
mov eax, dword [0x432588]
mov edx, ecx
sub edx, 0x31469517
sub edx, 1
add edx, 0x31469517
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, 0x99fafa40
mov ecx, 0x8f5fafec
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov dword [ebp - 0x1a0], 0xc473cd36
jmp 0x40831c
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x180], eax
lea eax, [ebp - 0x110]
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x1a0], 0xce83d73
jmp 0x40831c
mov ecx, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x160]
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 - 0x184], eax
mov edx, 0xffffffff
mov eax, 0x9e041c93
mov ecx, 0xc7e8afc8
cmp dword [ebp - 0x184], edx
cmove eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov dword [ebp - 0x1a0], 0xe4275338
jmp 0x40831c
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x1a0], 0x682599fa
jmp 0x40831c
mov eax, dword [ebp - 0x15c]
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 - 0x188], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x1a0], 0xf250d07f
jmp 0x40831c
mov edx, dword [ebp - 0x158]
mov eax, 0x8fe88de1
mov ecx, 0x3a68d6e2
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x1a0], 0xf0114233
jmp 0x40831c
mov eax, dword [ebp - 0x154]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a0], 0x35e21e73
jmp 0x40831c
mov dword [ebp - 0x1a0], 0xe4275338
jmp 0x40831c
mov eax, dword [ebp - 0x188]
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 - 0x18c], eax
mov dword [ebp - 0x1a0], 0x46b46d2b
jmp 0x40831c
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x180]
mov ecx, dword [ebp - 0x190]
mov edx, dword [ecx + 0x3c]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x194], eax
mov dword [ebp - 0x1a0], 0x14a5f6a4
jmp 0x40831c
mov word [ebp - 0x196], 0
mov dword [ebp - 0x1a0], 0xd5f238d1
jmp 0x40831c
mov ecx, dword [0x43258c]
mov eax, dword [0x432588]
mov edx, ecx
sub edx, 0xe8abbce4
sub edx, 1
add edx, 0xe8abbce4
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, 0xbbbf668b
mov ecx, 0x94f2038e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
movzx eax, word [ebp - 0x196]
mov dword [ebp - 0x150], eax
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x14c], eax
mov eax, dword [0x43258c]
mov ecx, dword [0x432588]
mov edx, eax
add edx, 0x966a7fc
sub edx, 1
sub edx, 0x966a7fc
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, 0xbbbf668b
mov ecx, 0xe082bedf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov dword [ebp - 0x1a0], 0x20e6b913
jmp 0x40831c
mov eax, dword [0x43258c]
mov ecx, dword [0x432588]
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, 0x72e26173
mov ecx, 0x63ff53ea
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov eax, dword [ebp - 0x14c]
movzx eax, word [eax + 6]
mov dword [ebp - 0x148], eax
mov ecx, dword [0x43258c]
mov eax, dword [0x432588]
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, 0x72e26173
mov ecx, 0xd84461a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov dword [ebp - 0x1a0], 0x4bcacf56
jmp 0x40831c
mov ecx, dword [0x43258c]
mov eax, dword [0x432588]
mov edx, ecx
sub edx, 0x455d1921
sub edx, 1
add edx, 0x455d1921
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, 0x9e726c04
mov ecx, 0x2ed76579
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov eax, dword [ebp - 0x150]
mov ecx, dword [ebp - 0x148]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x141], al
mov ecx, dword [0x43258c]
mov eax, dword [0x432588]
mov edx, ecx
add edx, 0x1e2c5672
sub edx, 1
sub edx, 0x1e2c5672
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, 0x9e726c04
mov ecx, 0xbed2d0bf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov dl, byte [ebp - 0x141]
mov eax, 0xb4993638
mov ecx, 0x95cd6c79
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov eax, dword [0x43258c]
mov ecx, dword [0x432588]
mov edx, eax
add edx, 0x1a1abce
sub edx, 1
sub edx, 0x1a1abce
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, 0x2a26f1ef
mov ecx, 0x4ed6cae9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov eax, dword [ebp - 0x194]
add eax, 0x1efab300
add eax, 0x18
sub eax, 0x1efab300
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x13c], eax
mov eax, dword [0x43258c]
mov ecx, dword [0x432588]
mov edx, eax
sub edx, 0xea03c4fc
sub edx, 1
add edx, 0xea03c4fc
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, 0x2a26f1ef
mov ecx, 0x4a5457be
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov dword [ebp - 0x1a0], 0x501319be
jmp 0x40831c
mov eax, dword [ebp - 0x13c]
movzx edx, word [eax + 0x14]
mov eax, dword [ebp - 0x140]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
movzx ecx, word [ebp - 0x196]
imul edx, ecx, 0x28
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x1a0], 0xbce951a3
jmp 0x40831c
mov ecx, dword [ebp - 0x138]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x42a981
call fcn.0041fb70
add esp, 8
mov edx, eax
mov eax, 0xf2e505ce
mov ecx, 0x98495347
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov dword [ebp - 0x120], 0
mov eax, dword [ebp - 0x19c]
mov eax, dword [eax + 8]
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x1a0], 0xbd7d5c3e
jmp 0x40831c
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x19c]
mov eax, dword [eax + 0xc]
add edx, 0xe0f22269
add edx, eax
sub edx, 0xe0f22269
mov ecx, dword [ebp - 0x134]
lea eax, [ebp - 0x120]
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 - 0x170]
mov byte [eax], cl
mov eax, dword [ebp - 0x180]
mov ecx, dword [ebp - 0x19c]
mov ecx, dword [ecx + 0xc]
add eax, 0x266f3757
add eax, ecx
sub eax, 0x266f3757
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x1a0], 0xa97c51f0
jmp 0x40831c
mov edx, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x19c]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, esi
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [ebp - 0x19c]
mov eax, dword [eax + 8]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0041c3d0
add esp, 0xc
mov ecx, dword [ebp - 0x120]
mov eax, dword [ebp - 0x19c]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x180]
mov eax, dword [ebp - 0x19c]
mov eax, dword [eax + 0xc]
sub esi, 0x819cab0c
add esi, eax
add esi, 0x819cab0c
lea eax, [ebp - 0x120]
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 - 0x170]
mov byte [eax], cl
mov dword [ebp - 0x1a0], 0x98495347
jmp 0x40831c
mov eax, dword [0x43258c]
mov ecx, dword [0x432588]
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, 0xf8eb0a60
mov ecx, 0x3fceb1a1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov ecx, dword [0x43258c]
mov eax, dword [0x432588]
mov edx, ecx
sub edx, 0xbbfc7a1a
sub edx, 1
add edx, 0xbbfc7a1a
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, 0xf8eb0a60
mov ecx, 0xb2180b89
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov dword [ebp - 0x1a0], 0xd27668d9
jmp 0x40831c
mov ax, word [ebp - 0x196]
mov word [ebp - 0x12a], ax
mov dword [ebp - 0x1a0], 0x41580ae5
jmp 0x40831c
mov eax, dword [0x43258c]
mov ecx, dword [0x432588]
mov edx, eax
add edx, 0xcac1c36d
sub edx, 1
sub edx, 0xcac1c36d
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, 0x44c614cc
mov ecx, 0x81cea435
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov ax, word [ebp - 0x12a]
add ax, 0xbf1b
add ax, 1
sub ax, 0xbf1b
mov word [ebp - 0x196], ax
mov ecx, dword [0x43258c]
mov eax, dword [0x432588]
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, 0x44c614cc
mov ecx, 0x8cf9aafe
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov dword [ebp - 0x1a0], 0x8c043949
jmp 0x40831c
mov dword [ebp - 0x1a0], 0xd5f238d1
jmp 0x40831c
mov ecx, dword [0x43258c]
mov eax, dword [0x432588]
mov edx, ecx
add edx, 0x508bc8e0
sub edx, 1
sub edx, 0x508bc8e0
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, 0x9a400094
mov ecx, 0x6bba3286
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x128], eax
mov eax, dword [0x43258c]
mov ecx, dword [0x432588]
mov edx, eax
add edx, 0x83939cd7
sub edx, 1
sub edx, 0x83939cd7
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, 0x9a400094
mov ecx, 0x314018c7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x40831c
mov dword [ebp - 0x1a0], 0x58cd8b86
jmp 0x40831c
mov eax, dword [ebp - 0x128]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x1a0], 0x272bc52
jmp 0x40831c
mov eax, dword [ebp - 0x124]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x178]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a0], 0xe4275338
jmp 0x40831c
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.0041b550
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x16c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x17c], eax
mov dword [ebp - 0x1a0], 0x4833b127
jmp 0x40831c
mov ecx, dword [ebp - 0x17c]
mov edx, dword [ebp - 0x178]
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 dword [ebp - 0x1a0], 0xd265eb22
jmp 0x40831c
mov dword [ebp - 0x1a0], 0x94f2038e
jmp 0x40831c
mov eax, dword [ebp - 0x14c]
mov dword [ebp - 0x1a0], 0x63ff53ea
jmp 0x40831c
mov eax, dword [ebp - 0x150]
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0x1a0], 0x2ed76579
jmp 0x40831c
mov dword [ebp - 0x1a0], 0x4ed6cae9
jmp 0x40831c
mov dword [ebp - 0x1a0], 0x3fceb1a1
jmp 0x40831c
mov ax, word [ebp - 0x12a]
mov ax, word [ebp - 0x12a]
mov ax, word [ebp - 0x12a]
mov ax, word [ebp - 0x12a]
mov ax, word [ebp - 0x12a]
mov ax, word [ebp - 0x12a]
xor ecx, ecx
sub cx, ax
xor eax, eax
sub ax, 1
add cx, ax
xor eax, eax
sub ax, cx
mov word [ebp - 0x196], ax
mov dword [ebp - 0x1a0], 0x81cea435
jmp 0x40831c
mov dword [ebp - 0x1a0], 0x6bba3286
jmp 0x406f18