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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x1c0
mov eax, dword [ebp + 8]
mov eax, dword [0x10091280]
xor eax, ebp
mov dword [ebp - 0xc], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x1a8], 0x90a2e801
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x1ac], eax
sub eax, 0x85ae435d
je 0x10008545
jmp 0x1000796a
mov eax, dword [ebp - 0x1ac]
sub eax, 0x8f26eb0e
je 0x10008c3c
jmp 0x10007980
mov eax, dword [ebp - 0x1ac]
sub eax, 0x90a2e801
je 0x10007e81
jmp 0x10007996
mov eax, dword [ebp - 0x1ac]
sub eax, 0x91a9fe59
je 0x10008ba1
jmp 0x100079ac
mov eax, dword [ebp - 0x1ac]
sub eax, 0x93f78357
je 0x10008a4e
jmp 0x100079c2
mov eax, dword [ebp - 0x1ac]
sub eax, 0x9f43f607
je 0x100086e1
jmp 0x100079d8
mov eax, dword [ebp - 0x1ac]
sub eax, 0x9f674faa
je 0x10007f3f
jmp 0x100079ee
mov eax, dword [ebp - 0x1ac]
sub eax, 0x9fe3346d
je 0x10008a31
jmp 0x10007a04
mov eax, dword [ebp - 0x1ac]
sub eax, 0xa2a074de
je 0x10008bc4
jmp 0x10007a1a
mov eax, dword [ebp - 0x1ac]
sub eax, 0xa2c86c62
je 0x1000815c
jmp 0x10007a30
mov eax, dword [ebp - 0x1ac]
sub eax, 0xa561b4b3
je 0x10008c67
jmp 0x10007a46
mov eax, dword [ebp - 0x1ac]
sub eax, 0xab489783
je 0x10008abc
jmp 0x10007a5c
mov eax, dword [ebp - 0x1ac]
sub eax, 0xb315e3e7
je 0x10008a22
jmp 0x10007a72
mov eax, dword [ebp - 0x1ac]
sub eax, 0xbe21616a
je 0x10008bb0
jmp 0x10007a88
mov eax, dword [ebp - 0x1ac]
sub eax, 0xc298f49c
je 0x1000833d
jmp 0x10007a9e
mov eax, dword [ebp - 0x1ac]
sub eax, 0xc94a44aa
je 0x1000820c
jmp 0x10007ab4
mov eax, dword [ebp - 0x1ac]
sub eax, 0xd908fb22
je 0x10008755
jmp 0x10007aca
mov eax, dword [ebp - 0x1ac]
sub eax, 0xdaa5c059
je 0x100083ee
jmp 0x10007ae0
mov eax, dword [ebp - 0x1ac]
sub eax, 0xe49998e2
je 0x10008609
jmp 0x10007af6
mov eax, dword [ebp - 0x1ac]
sub eax, 0xe7cc05e6
je 0x10008509
jmp 0x10007b0c
mov eax, dword [ebp - 0x1ac]
sub eax, 0xeb77d762
je 0x10008466
jmp 0x10007b22
mov eax, dword [ebp - 0x1ac]
sub eax, 0xebc8a6d4
je 0x1000894c
jmp 0x10007b38
mov eax, dword [ebp - 0x1ac]
sub eax, 0xf73dd6ab
je 0x10008282
jmp 0x10007b4e
mov eax, dword [ebp - 0x1ac]
sub eax, 0xfb4949e5
je 0x10008811
jmp 0x10007b64
mov eax, dword [ebp - 0x1ac]
sub eax, 0xfcd74dc8
je 0x10008be2
jmp 0x10007b7a
mov eax, dword [ebp - 0x1ac]
sub eax, 0xff5e26cf
je 0x10008b41
jmp 0x10007b90
mov eax, dword [ebp - 0x1ac]
sub eax, 0x4eb1341
je 0x10007fa2
jmp 0x10007ba6
mov eax, dword [ebp - 0x1ac]
sub eax, 0x111de98c
je 0x10008bd3
jmp 0x10007bbc
mov eax, dword [ebp - 0x1ac]
sub eax, 0x248713d9
je 0x100085e5
jmp 0x10007bd2
mov eax, dword [ebp - 0x1ac]
sub eax, 0x2b94dcb7
je 0x10008524
jmp 0x10007be8
mov eax, dword [ebp - 0x1ac]
sub eax, 0x2befb58f
je 0x1000871a
jmp 0x10007bfe
mov eax, dword [ebp - 0x1ac]
sub eax, 0x358519ae
je 0x1000839d
jmp 0x10007c14
mov eax, dword [ebp - 0x1ac]
sub eax, 0x35b87526
je 0x100082f4
jmp 0x10007c2a
mov eax, dword [ebp - 0x1ac]
sub eax, 0x38ab36c4
je 0x10008091
jmp 0x10007c40
mov eax, dword [ebp - 0x1ac]
sub eax, 0x3ca65c4d
je 0x10008c51
jmp 0x10007c56
mov eax, dword [ebp - 0x1ac]
sub eax, 0x3cddcefa
je 0x100080da
jmp 0x10007c6c
mov eax, dword [ebp - 0x1ac]
sub eax, 0x405eaa1b
je 0x100089c2
jmp 0x10007c82
mov eax, dword [ebp - 0x1ac]
sub eax, 0x44b444ef
je 0x10008082
jmp 0x10007c98
mov eax, dword [ebp - 0x1ac]
sub eax, 0x45f66817
je 0x10008031
jmp 0x10007cae
mov eax, dword [ebp - 0x1ac]
sub eax, 0x472362d0
je 0x10008415
jmp 0x10007cc4
mov eax, dword [ebp - 0x1ac]
sub eax, 0x479079ea
je 0x100084e8
jmp 0x10007cda
mov eax, dword [ebp - 0x1ac]
sub eax, 0x4d06bbd2
je 0x100086f0
jmp 0x10007cf0
mov eax, dword [ebp - 0x1ac]
sub eax, 0x52f49eb8
je 0x10008c76
jmp 0x10007d06
mov eax, dword [ebp - 0x1ac]
sub eax, 0x558685ef
je 0x1000816b
jmp 0x10007d1c
mov eax, dword [ebp - 0x1ac]
sub eax, 0x587c4287
je 0x1000838e
jmp 0x10007d32
mov eax, dword [ebp - 0x1ac]
sub eax, 0x5a7fadfc
je 0x10008c1e
jmp 0x10007d48
mov eax, dword [ebp - 0x1ac]
sub eax, 0x5c926f38
je 0x1000893d
jmp 0x10007d5e
mov eax, dword [ebp - 0x1ac]
sub eax, 0x5cb3dea5
je 0x100082d3
jmp 0x10007d74
mov eax, dword [ebp - 0x1ac]
sub eax, 0x5ea1d697
je 0x10008786
jmp 0x10007d8a
mov eax, dword [ebp - 0x1ac]
sub eax, 0x61589c91
je 0x10008b80
jmp 0x10007da0
mov eax, dword [ebp - 0x1ac]
sub eax, 0x63fbbc18
je 0x10008b32
jmp 0x10007db6
mov eax, dword [ebp - 0x1ac]
sub eax, 0x68b5904e
je 0x1000888e
jmp 0x10007dcc
mov eax, dword [ebp - 0x1ac]
sub eax, 0x6a411cf2
je 0x10007ed1
jmp 0x10007de2
mov eax, dword [ebp - 0x1ac]
sub eax, 0x6b18005a
je 0x10008677
jmp 0x10007df8
mov eax, dword [ebp - 0x1ac]
sub eax, 0x6ebdea7b
je 0x10008554
jmp 0x10007e0e
mov eax, dword [ebp - 0x1ac]
sub eax, 0x7101b947
je 0x100085b5
jmp 0x10007e24
mov eax, dword [ebp - 0x1ac]
sub eax, 0x79883547
je 0x10007fc3
jmp 0x10007e3a
mov eax, dword [ebp - 0x1ac]
sub eax, 0x79e7bc80
je 0x100087dd
jmp 0x10007e50
mov eax, dword [ebp - 0x1ac]
sub eax, 0x7b2a5e9b
je 0x10008c2d
jmp 0x10007e66
mov eax, dword [ebp - 0x1ac]
sub eax, 0x7dccf447
je 0x10008626
jmp 0x10007e7c
jmp 0x10008c80
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x17c], eax
lea eax, [ebp - 0x11c]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.10024200
mov eax, dword [ebp + 8]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
sub esp, 4
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x1a8], 0x6a411cf2
jmp 0x10008c80
mov ecx, dword [0x1009276c]
mov eax, dword [0x10092768]
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, 0xa2a074de
mov ecx, 0x9f674faa
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
cmp dword [ebp - 0x180], 0
setne al
and al, 1
mov byte [ebp - 0x171], al
mov eax, dword [0x1009276c]
mov ecx, dword [0x10092768]
mov edx, eax
sub edx, 0xf6bffd45
sub edx, 1
add edx, 0xf6bffd45
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, 0xa2a074de
mov ecx, 0x4eb1341
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov dl, byte [ebp - 0x171]
mov eax, 0x79883547
mov ecx, 0x38ab36c4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov ecx, dword [0x1009276c]
mov eax, dword [0x10092768]
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, 0x111de98c
mov ecx, 0x45f66817
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov eax, dword [0x1009276c]
mov ecx, dword [0x10092768]
mov edx, eax
sub edx, 0x4899753e
sub edx, 1
add edx, 0x4899753e
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, 0x111de98c
mov ecx, 0x44b444ef
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov dword [ebp - 0x1a8], 0xbe21616a
jmp 0x10008c80
mov eax, dword [0x1009276c]
mov ecx, dword [0x10092768]
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, 0xfcd74dc8
mov ecx, 0x3cddcefa
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov ecx, dword [ebp - 0x180]
mov edx, dword [ebp - 0x17c]
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 - 0x170], eax
mov eax, dword [0x1009276c]
mov ecx, dword [0x10092768]
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, 0xfcd74dc8
mov ecx, 0xa2c86c62
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov dword [ebp - 0x1a8], 0x558685ef
jmp 0x10008c80
mov eax, dword [ebp - 0x170]
mov eax, dword [eax]
mov dword [ebp - 0x184], eax
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0x180]
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 - 0x188], eax
mov eax, 0xffffffff
cmp dword [ebp - 0x188], eax
sete al
and al, 1
mov byte [ebp - 0x169], al
mov dword [ebp - 0x1a8], 0xc94a44aa
jmp 0x10008c80
mov ecx, dword [0x1009276c]
mov eax, dword [0x10092768]
mov edx, ecx
sub edx, 0xab043a69
sub edx, 1
add edx, 0xab043a69
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, 0x5a7fadfc
mov ecx, 0xf73dd6ab
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov eax, dword [0x1009276c]
mov ecx, dword [0x10092768]
mov edx, eax
add edx, 0x73c782db
sub edx, 1
sub edx, 0x73c782db
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, 0x5a7fadfc
mov ecx, 0x5cb3dea5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov dl, byte [ebp - 0x169]
mov eax, 0x358519ae
mov ecx, 0x35b87526
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov eax, dword [0x1009276c]
mov ecx, dword [0x10092768]
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, 0x7b2a5e9b
mov ecx, 0xc298f49c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov eax, dword [0x1009276c]
mov ecx, dword [0x10092768]
mov edx, eax
sub edx, 0x59a0afca
sub edx, 1
add edx, 0x59a0afca
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, 0x7b2a5e9b
mov ecx, 0x587c4287
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov dword [ebp - 0x1a8], 0xbe21616a
jmp 0x10008c80
mov eax, dword [ebp - 0x188]
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 - 0x168], eax
mov dword [ebp - 0x1a8], 0xdaa5c059
jmp 0x10008c80
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x1a8], 0x472362d0
jmp 0x10008c80
mov eax, dword [0x1009276c]
mov ecx, dword [0x10092768]
mov edx, eax
sub edx, 0xeecb5480
sub edx, 1
add edx, 0xeecb5480
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, 0x8f26eb0e
mov ecx, 0xeb77d762
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov eax, dword [ebp - 0x164]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x15d], al
mov ecx, dword [0x1009276c]
mov eax, dword [0x10092768]
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, 0x8f26eb0e
mov ecx, 0x479079ea
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov dl, byte [ebp - 0x15d]
mov eax, 0xe7cc05e6
mov ecx, 0x6ebdea7b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x1a8], 0x2b94dcb7
jmp 0x10008c80
mov eax, dword [ebp - 0x15c]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [ebp - 0x1a8], 0x85ae435d
jmp 0x10008c80
mov dword [ebp - 0x1a8], 0xbe21616a
jmp 0x10008c80
mov eax, dword [ebp - 0x18c]
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 - 0x190], eax
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x1a8], 0x7101b947
jmp 0x10008c80
mov eax, dword [ebp - 0x194]
mov ecx, dword [eax + 0x3c]
mov eax, dword [ebp - 0x158]
add eax, 0x8f308db6
add eax, ecx
sub eax, 0x8f308db6
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x1a8], 0x248713d9
jmp 0x10008c80
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x198], eax
mov word [ebp - 0x19a], 0
mov dword [ebp - 0x1a8], 0xe49998e2
jmp 0x10008c80
mov ax, word [ebp - 0x19a]
mov word [ebp - 0x14e], ax
mov dword [ebp - 0x1a8], 0x7dccf447
jmp 0x10008c80
mov eax, dword [0x1009276c]
mov ecx, dword [0x10092768]
mov edx, eax
sub edx, 0xa42a27ce
sub edx, 1
add edx, 0xa42a27ce
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, 0x3ca65c4d
mov ecx, 0x6b18005a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov ax, word [ebp - 0x14e]
movzx eax, ax
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp - 0x198]
mov ax, word [eax + 6]
mov word [ebp - 0x146], ax
mov eax, dword [0x1009276c]
mov ecx, dword [0x10092768]
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, 0x3ca65c4d
mov ecx, 0x9f43f607
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov dword [ebp - 0x1a8], 0x4d06bbd2
jmp 0x10008c80
mov ax, word [ebp - 0x146]
movzx esi, ax
mov edx, dword [ebp - 0x14c]
mov eax, 0xff5e26cf
mov ecx, 0x2befb58f
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov eax, dword [ebp - 0x198]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x18
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x144], eax
mov eax, dword [ebp - 0x198]
mov ax, word [eax + 0x14]
mov word [ebp - 0x13e], ax
mov dword [ebp - 0x1a8], 0xd908fb22
jmp 0x10008c80
mov ax, word [ebp - 0x13e]
movzx ecx, ax
mov eax, dword [ebp - 0x144]
sub eax, 0xffb4ed21
add eax, ecx
add eax, 0xffb4ed21
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x1a8], 0x5ea1d697
jmp 0x10008c80
mov eax, dword [ebp - 0x13c]
movzx ecx, word [ebp - 0x19a]
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 - 0x1a0], eax
mov ecx, dword [ebp - 0x1a0]
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100317da
call fcn.10027b60
mov edx, eax
mov eax, 0x79e7bc80
mov ecx, 0x5c926f38
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov dword [ebp - 0x120], 0
mov eax, dword [ebp - 0x1a0]
mov eax, dword [eax + 8]
mov dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x1a8], 0xfb4949e5
jmp 0x10008c80
mov edx, dword [ebp - 0x134]
mov eax, dword [ebp - 0x1a0]
mov eax, dword [eax + 0xc]
add edx, 0x6581f920
add edx, eax
sub edx, 0x6581f920
mov ecx, dword [ebp - 0x138]
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 - 0x1a1], al
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x1a0]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x1a8], 0x68b5904e
jmp 0x10008c80
mov edx, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x12c]
xor eax, eax
sub eax, ecx
sub edx, eax
mov ecx, dword [ebp - 0x190]
mov eax, dword [ebp - 0x1a0]
mov eax, dword [eax + 0xc]
add ecx, 0x1eec030e
add ecx, eax
sub ecx, 0x1eec030e
mov eax, dword [ebp - 0x1a0]
mov eax, dword [eax + 8]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.10024360
mov ecx, dword [ebp - 0x120]
mov eax, dword [ebp - 0x1a0]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x184]
mov eax, dword [ebp - 0x1a0]
mov eax, dword [eax + 0xc]
add esi, 0x4809700b
add esi, eax
sub esi, 0x4809700b
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 - 0x1a1], al
mov dword [ebp - 0x1a8], 0x5c926f38
jmp 0x10008c80
mov dword [ebp - 0x1a8], 0xebc8a6d4
jmp 0x10008c80
mov ecx, dword [0x1009276c]
mov eax, dword [0x10092768]
mov edx, ecx
sub edx, 0x20ef1b01
sub edx, 1
add edx, 0x20ef1b01
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, 0xa561b4b3
mov ecx, 0x405eaa1b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov ax, word [ebp - 0x19a]
xor ecx, ecx
sub cx, 1
sub ax, cx
mov word [ebp - 0x126], ax
mov eax, dword [0x1009276c]
mov ecx, dword [0x10092768]
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, 0xa561b4b3
mov ecx, 0xb315e3e7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov dword [ebp - 0x1a8], 0x9fe3346d
jmp 0x10008c80
mov ax, word [ebp - 0x126]
mov word [ebp - 0x19a], ax
mov dword [ebp - 0x1a8], 0x93f78357
jmp 0x10008c80
mov ecx, dword [0x1009276c]
mov eax, dword [0x10092768]
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, 0x52f49eb8
mov ecx, 0xab489783
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov ecx, dword [0x1009276c]
mov eax, dword [0x10092768]
mov edx, ecx
sub edx, 0xff928900
sub edx, 1
add edx, 0xff928900
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, 0x52f49eb8
mov ecx, 0x63fbbc18
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10008c80
mov dword [ebp - 0x1a8], 0xe49998e2
jmp 0x10008c80
mov eax, dword [ebp - 0x188]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov eax, dword [ebp - 0x18c]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x1a8], 0x61589c91
jmp 0x10008c80
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [ebp - 0x1a8], 0x91a9fe59
jmp 0x10008c80
mov dword [ebp - 0x1a8], 0xbe21616a
jmp 0x10008c80
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.10023460
add esp, 0x1c0
pop esi
pop ebx
pop ebp
ret
mov dword [ebp - 0x1a8], 0x9f674faa
jmp 0x10008c80
mov dword [ebp - 0x1a8], 0x45f66817
jmp 0x10008c80
mov ecx, dword [ebp - 0x180]
mov edx, dword [ebp - 0x17c]
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
mov dword [ebp - 0x1a8], 0x3cddcefa
jmp 0x10008c80
mov dword [ebp - 0x1a8], 0xf73dd6ab
jmp 0x10008c80
mov dword [ebp - 0x1a8], 0xc298f49c
jmp 0x10008c80
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x1a8], 0xeb77d762
jmp 0x10008c80
mov ax, word [ebp - 0x14e]
mov dword [ebp - 0x1a8], 0x6b18005a
jmp 0x10008c80
mov dword [ebp - 0x1a8], 0x405eaa1b
jmp 0x10008c80
mov dword [ebp - 0x1a8], 0xab489783
jmp 0x1000794e