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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xa0
mov eax, dword [ebp + 8]
mov dword [ebp - 0xa8], eax
mov eax, dword [0x10068004]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xa4], 0x9ec034e7
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0xac], eax
sub eax, 0x81a2ff4c
je 0x10003325
jmp 0x10001255
mov eax, dword [ebp - 0xac]
sub eax, 0x81d0e094
je 0x10002268
jmp 0x1000126b
mov eax, dword [ebp - 0xac]
sub eax, 0x82b890e5
je 0x100032de
jmp 0x10001281
mov eax, dword [ebp - 0xac]
sub eax, 0x84e29ca7
je 0x10002a1c
jmp 0x10001297
mov eax, dword [ebp - 0xac]
sub eax, 0x867faac2
je 0x10002e35
jmp 0x100012ad
mov eax, dword [ebp - 0xac]
sub eax, 0x88359924
je 0x1000326f
jmp 0x100012c3
mov eax, dword [ebp - 0xac]
sub eax, 0x89d5d756
je 0x10001cc4
jmp 0x100012d9
mov eax, dword [ebp - 0xac]
sub eax, 0x89de57bb
je 0x100023af
jmp 0x100012ef
mov eax, dword [ebp - 0xac]
sub eax, 0x90685c31
je 0x100030aa
jmp 0x10001305
mov eax, dword [ebp - 0xac]
sub eax, 0x93d98f4c
je 0x100020c0
jmp 0x1000131b
mov eax, dword [ebp - 0xac]
sub eax, 0x96a6ba95
je 0x10002e78
jmp 0x10001331
mov eax, dword [ebp - 0xac]
sub eax, 0x97bfc90a
je 0x10003008
jmp 0x10001347
mov eax, dword [ebp - 0xac]
sub eax, 0x98dbdb86
je 0x10002f92
jmp 0x1000135d
mov eax, dword [ebp - 0xac]
sub eax, 0x998c3d0e
je 0x10002522
jmp 0x10001373
mov eax, dword [ebp - 0xac]
sub eax, 0x99e9fa0f
je 0x1000364d
jmp 0x10001389
mov eax, dword [ebp - 0xac]
sub eax, 0x9d1a5fc1
je 0x10002895
jmp 0x1000139f
mov eax, dword [ebp - 0xac]
sub eax, 0x9ec034e7
je 0x10001bce
jmp 0x100013b5
mov eax, dword [ebp - 0xac]
sub eax, 0x9ece5536
je 0x10003217
jmp 0x100013cb
mov eax, dword [ebp - 0xac]
sub eax, 0x9f523a08
je 0x100027a6
jmp 0x100013e1
mov eax, dword [ebp - 0xac]
sub eax, 0xa14324b5
je 0x1000204a
jmp 0x100013f7
mov eax, dword [ebp - 0xac]
sub eax, 0xa46b4328
je 0x1000275d
jmp 0x1000140d
mov eax, dword [ebp - 0xac]
sub eax, 0xa601c486
je 0x10002e53
jmp 0x10001423
mov eax, dword [ebp - 0xac]
sub eax, 0xa65e6761
je 0x10002b0d
jmp 0x10001439
mov eax, dword [ebp - 0xac]
sub eax, 0xa868c67a
je 0x100021c5
jmp 0x1000144f
mov eax, dword [ebp - 0xac]
sub eax, 0xa8f8bde5
je 0x10002120
jmp 0x10001465
mov eax, dword [ebp - 0xac]
sub eax, 0xaae43938
je 0x1000372d
jmp 0x1000147b
mov eax, dword [ebp - 0xac]
sub eax, 0xab8819af
je 0x10001cb5
jmp 0x10001491
mov eax, dword [ebp - 0xac]
sub eax, 0xac8c107d
je 0x100036fa
jmp 0x100014a7
mov eax, dword [ebp - 0xac]
sub eax, 0xad1f839f
je 0x100028ea
jmp 0x100014bd
mov eax, dword [ebp - 0xac]
sub eax, 0xb02578ad
je 0x10001e99
jmp 0x100014d3
mov eax, dword [ebp - 0xac]
sub eax, 0xb0c83bf6
je 0x100032cf
jmp 0x100014e9
mov eax, dword [ebp - 0xac]
sub eax, 0xb5be0808
je 0x10001dd1
jmp 0x100014ff
mov eax, dword [ebp - 0xac]
sub eax, 0xb63bb3c1
je 0x10002e44
jmp 0x10001515
mov eax, dword [ebp - 0xac]
sub eax, 0xb87931ac
je 0x1000310a
jmp 0x1000152b
mov eax, dword [ebp - 0xac]
sub eax, 0xbc1c285e
je 0x10002d42
jmp 0x10001541
mov eax, dword [ebp - 0xac]
sub eax, 0xbda7df6e
je 0x1000361a
jmp 0x10001557
mov eax, dword [ebp - 0xac]
sub eax, 0xbf9de999
je 0x10002f37
jmp 0x1000156d
mov eax, dword [ebp - 0xac]
sub eax, 0xc0040b21
je 0x10003226
jmp 0x10001583
mov eax, dword [ebp - 0xac]
sub eax, 0xc634d8e9
je 0x100026c9
jmp 0x10001599
mov eax, dword [ebp - 0xac]
sub eax, 0xcbfdc428
je 0x10003629
jmp 0x100015af
mov eax, dword [ebp - 0xac]
sub eax, 0xcc1a3d6d
je 0x100025b2
jmp 0x100015c5
mov eax, dword [ebp - 0xac]
sub eax, 0xce82da9c
je 0x10003638
jmp 0x100015db
mov eax, dword [ebp - 0xac]
sub eax, 0xcf00e2d2
je 0x1000365c
jmp 0x100015f1
mov eax, dword [ebp - 0xac]
sub eax, 0xd4a2a8dc
je 0x10001de0
jmp 0x10001607
mov eax, dword [ebp - 0xac]
sub eax, 0xd75b3eef
je 0x10001e38
jmp 0x1000161d
mov eax, dword [ebp - 0xac]
sub eax, 0xd7ee3641
je 0x10003718
jmp 0x10001633
mov eax, dword [ebp - 0xac]
sub eax, 0xd872b872
je 0x100035f2
jmp 0x10001649
mov eax, dword [ebp - 0xac]
sub eax, 0xd9a8d540
je 0x10003580
jmp 0x1000165f
mov eax, dword [ebp - 0xac]
sub eax, 0xd9eebfd0
je 0x10002028
jmp 0x10001675
mov eax, dword [ebp - 0xac]
sub eax, 0xdcff4f0e
je 0x10002db0
jmp 0x1000168b
mov eax, dword [ebp - 0xac]
sub eax, 0xdd7d6d01
je 0x100033b8
jmp 0x100016a1
mov eax, dword [ebp - 0xac]
sub eax, 0xe20fd7c4
je 0x10001c17
jmp 0x100016b7
mov eax, dword [ebp - 0xac]
sub eax, 0xe29f614d
je 0x1000374b
jmp 0x100016cd
mov eax, dword [ebp - 0xac]
sub eax, 0xe5cc91a9
je 0x1000315b
jmp 0x100016e3
mov eax, dword [ebp - 0xac]
sub eax, 0xe70d4437
je 0x10003571
jmp 0x100016f9
mov eax, dword [ebp - 0xac]
sub eax, 0xeebe30f8
je 0x1000221f
jmp 0x1000170f
mov eax, dword [ebp - 0xac]
sub eax, 0xeecf97c1
je 0x10002e26
jmp 0x10001725
mov eax, dword [ebp - 0xac]
sub eax, 0xf2b07efb
je 0x1000336f
jmp 0x1000173b
mov eax, dword [ebp - 0xac]
sub eax, 0xf4bca705
je 0x100029cb
jmp 0x10001751
mov eax, dword [ebp - 0xac]
sub eax, 0xf598db53
je 0x10002445
jmp 0x10001767
mov eax, dword [ebp - 0xac]
sub eax, 0xf724dfd9
je 0x100024d1
jmp 0x1000177d
mov eax, dword [ebp - 0xac]
sub eax, 0xf7dd9673
je 0x100021d4
jmp 0x10001793
mov eax, dword [ebp - 0xac]
sub eax, 0xfad7561b
je 0x10001e08
jmp 0x100017a9
mov eax, dword [ebp - 0xac]
sub eax, 0x34d399
je 0x10002171
jmp 0x100017bf
mov eax, dword [ebp - 0xac]
sub eax, 0x1e20b26
je 0x1000316a
mov eax, dword [0x100692a8]
mov ecx, dword [0x100692a4]
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, 0x527fdeba
mov ecx, 0xe20fd7c4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
push eax
mov eax, esp
mov dword [ebp - 0x98], eax
push eax
mov eax, esp
mov dword [ebp - 0x94], eax
sub esp, 0x104
mov eax, esp
mov dword [ebp - 0x90], eax
push eax
mov eax, esp
mov dword [ebp - 0x8c], eax
push eax
mov eax, esp
mov dword [ebp - 0x88], eax
push eax
mov eax, esp
mov dword [ebp - 0x84], eax
push eax
mov eax, esp
mov dword [ebp - 0x80], eax
push eax
mov eax, esp
mov dword [ebp - 0x7c], eax
push eax
mov eax, esp
mov dword [ebp - 0x78], eax
mov eax, dword [0x100692a8]
mov ecx, dword [0x100692a4]
mov edx, eax
add edx, 0x7f71fb47
sub edx, 1
sub edx, 0x7f71fb47
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, 0x527fdeba
mov ecx, 0xab8819af
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov dword [ebp - 0xa4], 0x89d5d756
jmp 0x100037e1
mov ecx, dword [0x100692a8]
mov eax, dword [0x100692a4]
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, 0x81a2ff4c
mov ecx, 0x696b60dd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov dword [ebp - 0xa4], 0xd4a2a8dc
jmp 0x100037e1
mov eax, dword [ebp - 0x68]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, eax
mov eax, dword [ebp - 0x98]
mov dword [eax], ecx
mov dword [ebp - 0xa4], 0xfad7561b
jmp 0x100037e1
mov edx, dword [ebp - 0x98]
mov eax, 0x1cc14a24
mov ecx, 0xd75b3eef
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [ebp - 0x98]
mov eax, dword [eax]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0xa4], 0x34dca9fe
jmp 0x100037e1
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0xa4], 0x34ca6116
jmp 0x100037e1
mov edx, dword [ebp - 0x58]
mov esi, 0xffffffff
mov eax, 0xa8f8bde5
mov ecx, 0xa14324b5
cmp edx, esi
cmove eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov ecx, dword [0x100692a8]
mov eax, dword [0x100692a4]
mov edx, ecx
sub edx, 0xd42718ba
sub edx, 1
add edx, 0xd42718ba
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, 0xbda7df6e
mov ecx, 0x93d98f4c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [0x100692a8]
mov ecx, dword [0x100692a4]
mov edx, eax
sub edx, 0x5254c5a5
sub edx, 1
add edx, 0x5254c5a5
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, 0xbda7df6e
mov ecx, 0x14d2ebcb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [0x100692a8]
mov ecx, dword [0x100692a4]
mov edx, eax
sub edx, 0x65d2c561
sub edx, 1
add edx, 0x65d2c561
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, 0x4232c543
mov ecx, 0x34d399
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
mov dword [ebp - 0x54], eax
mov eax, dword [0x100692a8]
mov ecx, dword [0x100692a4]
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, 0x4232c543
mov ecx, 0xa868c67a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov dword [ebp - 0xa4], 0xf7dd9673
jmp 0x100037e1
mov eax, dword [ebp - 0x54]
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 - 0x50], eax
mov dword [ebp - 0xa4], 0xeebe30f8
jmp 0x100037e1
mov eax, dword [0x100692a8]
mov ecx, dword [0x100692a4]
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, 0xcbfdc428
mov ecx, 0x81d0e094
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov ecx, dword [0x100692a8]
mov eax, dword [0x100692a4]
mov edx, ecx
add edx, 0xec1f7f1b
sub edx, 1
sub edx, 0xec1f7f1b
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, 0xcbfdc428
mov ecx, 0x15c0a91e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [ebp - 0x88]
cmp dword [eax], 0
setne al
and al, 1
mov byte [ebp - 0x49], al
mov dword [ebp - 0xa4], 0x7bdcf33a
jmp 0x100037e1
mov ecx, dword [0x100692a8]
mov eax, dword [0x100692a4]
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, 0x21a0e129
mov ecx, 0x73b42a5b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [0x100692a8]
mov ecx, dword [0x100692a4]
mov edx, eax
add edx, 0x55f06f26
sub edx, 1
sub edx, 0x55f06f26
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, 0xce82da9c
mov ecx, 0x998c3d0e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
mov ecx, dword [0x100692a8]
mov eax, dword [0x100692a4]
mov edx, ecx
sub edx, 0x3121ab06
sub edx, 1
add edx, 0x3121ab06
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, 0xce82da9c
mov ecx, 0x5e9aaab4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [0x100692a8]
mov ecx, dword [0x100692a4]
mov edx, eax
sub edx, 0xce75fd4c
sub edx, 1
add edx, 0xce75fd4c
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, 0x68430ddb
mov ecx, 0x40e9ce55
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov ecx, dword [0x100692a8]
mov eax, dword [0x100692a4]
mov edx, ecx
add edx, 0x1263ed70
sub edx, 1
sub edx, 0x1263ed70
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, 0x99e9fa0f
mov ecx, 0x62cd3ba7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [0x100692a8]
mov ecx, dword [0x100692a4]
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, 0xcf00e2d2
mov ecx, 0x9f523a08
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
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 - 0x84]
mov dword [eax], ecx
mov eax, dword [ebp - 0x94]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x80]
mov dword [eax], ecx
mov ecx, dword [0x100692a8]
mov eax, dword [0x100692a4]
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, 0xcf00e2d2
mov ecx, 0x50c92b8e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [ebp - 0x40]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x44]
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 - 0x7c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x78]
mov word [eax], 0
mov dword [ebp - 0xa4], 0x14b5b23b
jmp 0x100037e1
mov ecx, dword [0x100692a8]
mov eax, dword [0x100692a4]
mov edx, ecx
add edx, 0xfb5f8fb8
sub edx, 1
sub edx, 0xfb5f8fb8
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, 0x4bf810a9
mov ecx, 0x1b3957c3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [0x100692a8]
mov ecx, dword [0x100692a4]
mov edx, eax
add edx, 0x9f89fd1f
sub edx, 1
sub edx, 0x9f89fd1f
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, 0xc5a0464
mov ecx, 0x84e29ca7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov ax, word [ebp - 0x34]
movzx ecx, ax
mov eax, dword [ebp - 0x3c]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x31], al
mov ecx, dword [0x100692a8]
mov eax, dword [0x100692a4]
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, 0xc5a0464
mov ecx, 0x53aed7de
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
add eax, 0x2671f52d
xor ecx, ecx
add ecx, 0x18
add eax, ecx
sub eax, 0x2671f52d
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
mov ecx, dword [0x100692a8]
mov eax, dword [0x100692a4]
mov edx, ecx
add edx, 0xa34ea1be
sub edx, 1
sub edx, 0xa34ea1be
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, 0x4f713a95
mov ecx, 0x3994840
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov ecx, dword [0x100692a8]
mov eax, dword [0x100692a4]
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, 0x57a9d679
mov ecx, 0xdcff4f0e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [ebp - 0x6c]
mov cl, byte [ebp - 0x23]
mov byte [eax], cl
mov ecx, dword [0x100692a8]
mov eax, dword [0x100692a4]
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, 0x57a9d679
mov ecx, 0xeecf97c1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov dword [ebp - 0xa4], 0x867faac2
jmp 0x100037e1
mov dword [ebp - 0xa4], 0xb63bb3c1
jmp 0x100037e1
mov dword [ebp - 0xa4], 0xa601c486
jmp 0x100037e1
mov eax, dword [ebp - 0x78]
mov ax, word [eax]
add ax, 0xd05e
add ax, 1
sub ax, 0xd05e
mov word [ebp - 0x22], ax
mov dword [ebp - 0xa4], 0x96a6ba95
jmp 0x100037e1
mov ecx, dword [0x100692a8]
mov eax, dword [0x100692a4]
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, 0xd872b872
mov ecx, 0x51e21a9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [ebp - 0x78]
mov cx, word [ebp - 0x22]
mov word [eax], cx
mov eax, dword [0x100692a8]
mov ecx, dword [0x100692a4]
mov edx, eax
add edx, 0x8d69d941
sub edx, 1
sub edx, 0x8d69d941
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, 0x3e0ec7ed
mov ecx, 0x98dbdb86
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov ecx, dword [0x100692a8]
mov eax, dword [0x100692a4]
mov edx, ecx
add edx, 0x85a19657
sub edx, 1
sub edx, 0x85a19657
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, 0xd872b872
mov ecx, 0x97bfc90a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [0x100692a8]
mov ecx, dword [0x100692a4]
mov edx, eax
add edx, 0x55fabcd8
sub edx, 1
sub edx, 0x55fabcd8
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, 0xac8c107d
mov ecx, 0x69e9c827
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov dword [ebp - 0xa4], 0x86a8d92
jmp 0x100037e1
mov eax, dword [0x100692a8]
mov ecx, dword [0x100692a4]
mov edx, eax
add edx, 0x3d8d4849
sub edx, 1
sub edx, 0x3d8d4849
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, 0x15e203fd
mov ecx, 0xe5cc91a9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov dword [ebp - 0xa4], 0x14b5b23b
jmp 0x100037e1
mov dword [ebp - 0xa4], 0xc0040b21
jmp 0x100037e1
mov eax, dword [0x100692a8]
mov ecx, dword [0x100692a4]
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, 0xaae43938
mov ecx, 0x88359924
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [ebp - 0x20]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x100692a8]
mov ecx, dword [0x100692a4]
mov edx, eax
add edx, 0x9565093e
sub edx, 1
sub edx, 0x9565093e
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, 0xaae43938
mov ecx, 0xb0c83bf6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov dword [ebp - 0xa4], 0x82b890e5
jmp 0x100037e1
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0xa0]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa4], 0x6ae2d276
jmp 0x100037e1
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x9c], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0xa0], 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.1000fbe0
add esp, 0xc
mov dword [ebp - 0xa4], 0x696b60dd
jmp 0x100037e1
mov eax, dword [0x100692a8]
mov ecx, dword [0x100692a4]
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, 0xe29f614d
mov ecx, 0xdd7d6d01
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov eax, dword [ebp - 0x98]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x5c]
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 - 0x90]
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 - 0x8c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x8c]
mov ecx, dword [0x100692a8]
mov eax, dword [0x100692a4]
mov edx, ecx
add edx, 0x6db032e4
sub edx, 1
sub edx, 0x6db032e4
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, 0xe29f614d
mov ecx, 0x1c4eb367
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x100037e1
mov dword [ebp - 0xa4], 0x34d399
jmp 0x100037e1
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x50]
mov dword [eax], ecx
mov dword [ebp - 0xa4], 0x42b09a84
jmp 0x100037e1
mov eax, dword [ebp - 0x78]
mov cx, word [ebp - 0x22]
mov word [eax], cx
mov dword [ebp - 0xa4], 0x51e21a9
jmp 0x100037e1
mov dword [ebp - 0xa4], 0x93d98f4c
jmp 0x100037e1
mov dword [ebp - 0xa4], 0x81d0e094
jmp 0x100037e1
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xa4], 0x998c3d0e
jmp 0x100037e1
mov dword [ebp - 0xa4], 0xc634d8e9
jmp 0x100037e1
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
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 - 0x84]
mov dword [eax], ecx
mov eax, dword [ebp - 0x94]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x80]
mov dword [eax], ecx
mov dword [ebp - 0xa4], 0x9f523a08
jmp 0x100037e1
mov dword [ebp - 0xa4], 0x69e9c827
jmp 0x100037e1
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xa4], 0x7df5c5f0
jmp 0x100037e1
mov eax, dword [ebp - 0x20]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa4], 0x88359924
jmp 0x100037e1
mov eax, dword [ebp - 0x98]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x5c]
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 - 0x90]
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 - 0x8c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xa4], 0xdd7d6d01
jmp 0x100037e1
jmp 0x10001239