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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xa4
mov eax, dword [ebp + 8]
mov dword [ebp - 0xac], eax
mov eax, dword [0x10064200]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xa8], 0x3eef4ebe
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xb0], eax
sub eax, 0x87e93464
je 0x100017bd
jmp 0x10001235
mov eax, dword [ebp - 0xb0]
sub eax, 0x8ff9624f
je 0x10001a90
jmp 0x1000124b
mov eax, dword [ebp - 0xb0]
sub eax, 0x97dfa23a
je 0x10001cfe
jmp 0x10001261
mov eax, dword [ebp - 0xb0]
sub eax, 0x98eaf746
je 0x10001e15
jmp 0x10001277
mov eax, dword [ebp - 0xb0]
sub eax, 0xa0ca5399
je 0x10002031
jmp 0x1000128d
mov eax, dword [ebp - 0xb0]
sub eax, 0xa1539881
je 0x10001fae
jmp 0x100012a3
mov eax, dword [ebp - 0xb0]
sub eax, 0xa881c12c
je 0x100021a1
jmp 0x100012b9
mov eax, dword [ebp - 0xb0]
sub eax, 0xacf4f788
je 0x10001c23
jmp 0x100012cf
mov eax, dword [ebp - 0xb0]
sub eax, 0xadfe9786
je 0x10001cad
jmp 0x100012e5
mov eax, dword [ebp - 0xb0]
sub eax, 0xaf0e53ab
je 0x100023e6
jmp 0x100012fb
mov eax, dword [ebp - 0xb0]
sub eax, 0xb0761098
je 0x10002005
jmp 0x10001311
mov eax, dword [ebp - 0xb0]
sub eax, 0xb0a50d40
je 0x10002192
jmp 0x10001327
mov eax, dword [ebp - 0xb0]
sub eax, 0xb67f7430
je 0x10001bca
jmp 0x1000133d
mov eax, dword [ebp - 0xb0]
sub eax, 0xb6a02ee6
je 0x100021d9
jmp 0x10001353
mov eax, dword [ebp - 0xb0]
sub eax, 0xb8f1028e
je 0x100018da
jmp 0x10001369
mov eax, dword [ebp - 0xb0]
sub eax, 0xc3496e62
je 0x10002540
jmp 0x1000137f
mov eax, dword [ebp - 0xb0]
sub eax, 0xc3869d71
je 0x100017dc
jmp 0x10001395
mov eax, dword [ebp - 0xb0]
sub eax, 0xc9aa027e
je 0x10001ed3
jmp 0x100013ab
mov eax, dword [ebp - 0xb0]
sub eax, 0xcb495519
je 0x10002431
jmp 0x100013c1
mov eax, dword [ebp - 0xb0]
sub eax, 0xcec7578a
je 0x10001beb
jmp 0x100013d7
mov eax, dword [ebp - 0xb0]
sub eax, 0xd25a1f6f
je 0x10001c05
jmp 0x100013ed
mov eax, dword [ebp - 0xb0]
sub eax, 0xd646bde5
je 0x10002157
jmp 0x10001403
mov eax, dword [ebp - 0xb0]
sub eax, 0xd8e7a8ea
je 0x10001ab9
jmp 0x10001419
mov eax, dword [ebp - 0xb0]
sub eax, 0xe35d82a6
je 0x10001df7
jmp 0x1000142f
mov eax, dword [ebp - 0xb0]
sub eax, 0xe3fccec1
je 0x100023f8
jmp 0x10001445
mov eax, dword [ebp - 0xb0]
sub eax, 0xe8f8177f
je 0x10001d25
jmp 0x1000145b
mov eax, dword [ebp - 0xb0]
sub eax, 0xf1216bbe
je 0x10001f9f
jmp 0x10001471
mov eax, dword [ebp - 0xb0]
sub eax, 0xf2c740ec
je 0x100021bb
jmp 0x10001487
mov eax, dword [ebp - 0xb0]
sub eax, 0xfaaa19cb
je 0x10001e5e
jmp 0x1000149d
mov eax, dword [ebp - 0xb0]
sub eax, 0x5bde993
je 0x10002170
jmp 0x100014b3
mov eax, dword [ebp - 0xb0]
sub eax, 0x9695f43
je 0x10002051
jmp 0x100014c9
mov eax, dword [ebp - 0xb0]
sub eax, 0xc162877
je 0x100024b2
jmp 0x100014df
mov eax, dword [ebp - 0xb0]
sub eax, 0x10e9b615
je 0x10001983
jmp 0x100014f5
mov eax, dword [ebp - 0xb0]
sub eax, 0x1383df34
je 0x10001ce5
jmp 0x1000150b
mov eax, dword [ebp - 0xb0]
sub eax, 0x14d08987
je 0x10001ee2
jmp 0x10001521
mov eax, dword [ebp - 0xb0]
sub eax, 0x1b5a08db
je 0x10001a9f
jmp 0x10001537
mov eax, dword [ebp - 0xb0]
sub eax, 0x1fc4f9ef
je 0x10001861
jmp 0x1000154d
mov eax, dword [ebp - 0xb0]
sub eax, 0x2425e99b
je 0x10002575
jmp 0x10001563
mov eax, dword [ebp - 0xb0]
sub eax, 0x271b4a88
je 0x10001c4c
jmp 0x10001579
mov eax, dword [ebp - 0xb0]
sub eax, 0x2fe7ae0c
je 0x10002504
jmp 0x1000158f
mov eax, dword [ebp - 0xb0]
sub eax, 0x3169be0f
je 0x10001915
jmp 0x100015a5
mov eax, dword [ebp - 0xb0]
sub eax, 0x3eef4ebe
je 0x1000170a
jmp 0x100015bb
mov eax, dword [ebp - 0xb0]
sub eax, 0x407255d3
je 0x10002370
jmp 0x100015d1
mov eax, dword [ebp - 0xb0]
sub eax, 0x474a0892
je 0x10001d6e
jmp 0x100015e7
mov eax, dword [ebp - 0xb0]
sub eax, 0x4d34d021
je 0x10002148
jmp 0x100015fd
mov eax, dword [ebp - 0xb0]
sub eax, 0x52d952fb
je 0x100022fa
jmp 0x10001613
mov eax, dword [ebp - 0xb0]
sub eax, 0x55f9ac8a
je 0x1000224f
jmp 0x10001629
mov eax, dword [ebp - 0xb0]
sub eax, 0x5ac7bc07
je 0x10002519
jmp 0x1000163f
mov eax, dword [ebp - 0xb0]
sub eax, 0x5ddbb0ee
je 0x10001b27
jmp 0x10001655
mov eax, dword [ebp - 0xb0]
sub eax, 0x622c29c8
je 0x100018e9
jmp 0x1000166b
mov eax, dword [ebp - 0xb0]
sub eax, 0x6760ee84
je 0x100017eb
jmp 0x10001681
mov eax, dword [ebp - 0xb0]
sub eax, 0x6a048c89
je 0x10001f50
jmp 0x10001697
mov eax, dword [ebp - 0xb0]
sub eax, 0x6cb20da1
je 0x10001a72
jmp 0x100016ad
mov eax, dword [ebp - 0xb0]
sub eax, 0x6d52cce8
je 0x10001bbb
jmp 0x100016c3
mov eax, dword [ebp - 0xb0]
sub eax, 0x75a7b6ac
je 0x100022eb
jmp 0x100016d9
mov eax, dword [ebp - 0xb0]
sub eax, 0x77e8f97b
je 0x1000252e
jmp 0x100016ef
mov eax, dword [ebp - 0xb0]
sub eax, 0x7e7ca7af
je 0x10001c32
jmp 0x10001705
jmp 0x1000257f
mov eax, dword [ebp - 0xac]
push eax
sub esp, 0x100
mov ecx, esp
mov dword [ebp - 0x94], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x90], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x8c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x88], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x84], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x80], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x7c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x78], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x74], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x70], ecx
mov dword [ebp - 0x98], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x9c], eax
lea eax, [ebp - 0x1c]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.100066a0
add esp, 0xc
mov eax, dword [ebp - 0x98]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0xa8], 0x87e93464
jmp 0x1000257f
mov eax, 0xc3869d71
mov ecx, 0x6760ee84
cmp dword [ebp - 0xa0], 0
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov dword [ebp - 0xa8], 0x52d952fb
jmp 0x1000257f
mov ecx, dword [0x10065550]
mov eax, dword [0x1006554c]
mov edx, ecx
sub edx, 0x7bbc358a
sub edx, 1
add edx, 0x7bbc358a
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, 0xe3fccec1
mov ecx, 0x1fc4f9ef
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov ecx, dword [ebp - 0xa0]
mov edx, dword [ebp - 0x9c]
lea eax, [ebp - 0x1c]
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
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x6c], eax
mov eax, dword [0x10065550]
mov ecx, dword [0x1006554c]
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, 0xe3fccec1
mov ecx, 0xb8f1028e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov dword [ebp - 0xa8], 0x622c29c8
jmp 0x1000257f
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0xa8], 0x3169be0f
jmp 0x1000257f
mov ecx, dword [0x10065550]
mov eax, dword [0x1006554c]
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, 0xcb495519
mov ecx, 0x10e9b615
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x64]
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 eax, dword [ebp - 0x94]
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 ecx, eax
mov eax, dword [ebp - 0x90]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
mov ecx, 0xffffffff
cmp dword [eax], ecx
sete al
and al, 1
mov byte [ebp - 0x5d], al
mov ecx, dword [0x10065550]
mov eax, dword [0x1006554c]
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, 0xcb495519
mov ecx, 0x6cb20da1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov dl, byte [ebp - 0x5d]
mov eax, 0x1b5a08db
mov ecx, 0x8ff9624f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov dword [ebp - 0xa8], 0x52d952fb
jmp 0x1000257f
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0xa8], 0xd8e7a8ea
jmp 0x1000257f
mov ecx, dword [0x10065550]
mov eax, dword [0x1006554c]
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, 0xc162877
mov ecx, 0x5ddbb0ee
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov eax, dword [ebp - 0x5c]
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 ecx, eax
mov eax, dword [ebp - 0x8c]
mov dword [eax], ecx
mov eax, dword [0x10065550]
mov ecx, dword [0x1006554c]
mov edx, eax
sub edx, 0xcaed1c2a
sub edx, 1
add edx, 0xcaed1c2a
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, 0xc162877
mov ecx, 0x6d52cce8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov dword [ebp - 0xa8], 0xb67f7430
jmp 0x1000257f
mov edx, dword [ebp - 0x8c]
mov eax, 0xcec7578a
mov ecx, 0x7e7ca7af
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0xa8], 0xd25a1f6f
jmp 0x1000257f
mov eax, dword [ebp - 0x58]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa8], 0xacf4f788
jmp 0x1000257f
mov dword [ebp - 0xa8], 0x52d952fb
jmp 0x1000257f
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0xa8], 0x271b4a88
jmp 0x1000257f
mov eax, dword [ebp - 0x54]
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 - 0x88]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x84]
mov dword [eax], ecx
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0xa8], 0xadfe9786
jmp 0x1000257f
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c]
mov ecx, dword [ebp - 0x50]
add ecx, 0xdf961c7c
add ecx, eax
sub ecx, 0xdf961c7c
mov eax, dword [ebp - 0x80]
mov dword [eax], ecx
mov eax, dword [ebp - 0x7c]
mov word [eax], 0
mov dword [ebp - 0xa8], 0x1383df34
jmp 0x1000257f
mov eax, dword [ebp - 0x7c]
mov ax, word [eax]
mov word [ebp - 0x4a], ax
mov dword [ebp - 0xa8], 0x97dfa23a
jmp 0x1000257f
mov ax, word [ebp - 0x4a]
movzx eax, ax
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
add eax, 4
add eax, 2
mov dword [ebp - 0x44], eax
mov dword [ebp - 0xa8], 0xe8f8177f
jmp 0x1000257f
mov eax, dword [0x10065550]
mov ecx, dword [0x1006554c]
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, 0x2fe7ae0c
mov ecx, 0x474a0892
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov eax, dword [ebp - 0x44]
movzx ecx, word [eax]
mov eax, dword [ebp - 0x48]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x3d], al
mov ecx, dword [0x10065550]
mov eax, dword [0x1006554c]
mov edx, ecx
add edx, 0xb036545
sub edx, 1
sub edx, 0xb036545
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, 0x2fe7ae0c
mov ecx, 0xe35d82a6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov dl, byte [ebp - 0x3d]
mov eax, 0xa881c12c
mov ecx, 0x98eaf746
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov eax, dword [0x10065550]
mov ecx, dword [0x1006554c]
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, 0x5ac7bc07
mov ecx, 0xfaaa19cb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
add eax, 0xdce66226
add eax, 0x18
sub eax, 0xdce66226
mov ecx, dword [ebp - 0x80]
mov ecx, dword [ecx]
movzx edx, word [ecx + 0x14]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x3c], eax
mov eax, dword [0x10065550]
mov ecx, dword [0x1006554c]
mov edx, eax
sub edx, 0x26f82401
sub edx, 1
add edx, 0x26f82401
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, 0x5ac7bc07
mov ecx, 0xc9aa027e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov dword [ebp - 0xa8], 0x14d08987
jmp 0x1000257f
mov ecx, dword [0x10065550]
mov eax, dword [0x1006554c]
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, 0x77e8f97b
mov ecx, 0x6a048c89
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x38], eax
mov eax, dword [0x10065550]
mov ecx, dword [0x1006554c]
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, 0x77e8f97b
mov ecx, 0xf1216bbe
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov dword [ebp - 0xa8], 0xa1539881
jmp 0x1000257f
mov eax, dword [ebp - 0x7c]
movzx eax, word [eax]
imul edx, eax, 0x28
mov ecx, dword [ebp - 0x38]
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 - 0x78]
mov dword [eax], ecx
mov eax, dword [ebp - 0x78]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10012190
call fcn.10008a10
add esp, 8
mov edx, eax
mov eax, 0xb0761098
mov ecx, 0x4d34d021
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov eax, dword [ebp - 0x74]
mov dword [eax], 0
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0xa8], 0xa0ca5399
jmp 0x1000257f
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
add eax, 0xc
mov dword [ebp - 0x28], eax
mov dword [ebp - 0xa8], 0x9695f43
jmp 0x1000257f
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
mov edx, dword [ebp - 0x2c]
add edx, 0x50bcf748
add edx, eax
sub edx, 0x50bcf748
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x34]
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 - 0x70]
mov byte [eax], cl
mov ecx, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov edx, dword [eax + 0xc]
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 - 0x88]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add ecx, 0xffee9a88
add ecx, eax
sub ecx, 0xffee9a88
mov eax, dword [ebp - 0x78]
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.10006800
add esp, 0xc
mov eax, dword [ebp - 0x74]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
xor eax, eax
sub eax, edi
sub esi, eax
mov eax, dword [ebp - 0x74]
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 - 0x70]
mov byte [eax], cl
mov dword [ebp - 0xa8], 0x4d34d021
jmp 0x1000257f
mov dword [ebp - 0xa8], 0xd646bde5
jmp 0x1000257f
mov eax, dword [ebp - 0x7c]
mov ax, word [eax]
mov word [ebp - 0x22], ax
mov dword [ebp - 0xa8], 0x5bde993
jmp 0x1000257f
mov cx, word [ebp - 0x22]
xor eax, eax
sub ax, 1
sub cx, ax
mov eax, dword [ebp - 0x7c]
mov word [eax], cx
mov dword [ebp - 0xa8], 0xb0a50d40
jmp 0x1000257f
mov dword [ebp - 0xa8], 0x1383df34
jmp 0x1000257f
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0xa8], 0xf2c740ec
jmp 0x1000257f
mov eax, dword [ebp - 0x20]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa8], 0xb6a02ee6
jmp 0x1000257f
mov ecx, dword [0x10065550]
mov eax, dword [0x1006554c]
mov edx, ecx
sub edx, 0x9ed80029
sub edx, 1
add edx, 0x9ed80029
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, 0xc3496e62
mov ecx, 0x55f9ac8a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x9c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x10065550]
mov eax, dword [0x1006554c]
mov edx, ecx
sub edx, 0x1537404
sub edx, 1
add edx, 0x1537404
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, 0xc3496e62
mov ecx, 0x75a7b6ac
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov dword [ebp - 0xa8], 0x52d952fb
jmp 0x1000257f
mov ecx, dword [0x10065550]
mov eax, dword [0x1006554c]
mov edx, ecx
add edx, 0x41488ff5
sub edx, 1
sub edx, 0x41488ff5
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, 0x2425e99b
mov ecx, 0x407255d3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov ecx, dword [0x10065550]
mov eax, dword [0x1006554c]
mov edx, ecx
sub edx, 0xb9eb234b
sub edx, 1
add edx, 0xb9eb234b
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, 0x2425e99b
mov ecx, 0xaf0e53ab
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000257f
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10005aa0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [ebp - 0xa0]
mov edx, dword [ebp - 0x9c]
lea eax, [ebp - 0x1c]
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 - 0xa8], 0x1fc4f9ef
jmp 0x1000257f
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x64]
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 eax, dword [ebp - 0x94]
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 ecx, eax
mov eax, dword [ebp - 0x90]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xa8], 0x10e9b615
jmp 0x1000257f
mov eax, dword [ebp - 0x5c]
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 ecx, eax
mov eax, dword [ebp - 0x8c]
mov dword [eax], ecx
mov dword [ebp - 0xa8], 0x5ddbb0ee
jmp 0x1000257f
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0xa8], 0x474a0892
jmp 0x1000257f
mov eax, dword [ebp - 0x80]
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0xa8], 0xfaaa19cb
jmp 0x1000257f
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0xa8], 0x6a048c89
jmp 0x1000257f
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x9c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa8], 0x55f9ac8a
jmp 0x1000257f
mov dword [ebp - 0xa8], 0x407255d3
jmp 0x10001219