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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x198
mov eax, dword [ebp + 8]
mov dword [ebp - 0x19c], eax
mov eax, dword [0x1006e000]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x198], 0x727b443b
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x1a0], eax
sub eax, 0x8150642d
je 0x100021a1
jmp 0x100011d4
mov eax, dword [ebp - 0x1a0]
sub eax, 0x81b59e52
je 0x10001c87
jmp 0x100011ea
mov eax, dword [ebp - 0x1a0]
sub eax, 0x8404f49b
je 0x10001ede
jmp 0x10001200
mov eax, dword [ebp - 0x1a0]
sub eax, 0x8b46f1db
je 0x10001e10
jmp 0x10001216
mov eax, dword [ebp - 0x1a0]
sub eax, 0x8cfb426f
je 0x10001d4a
jmp 0x1000122c
mov eax, dword [ebp - 0x1a0]
sub eax, 0x93268965
je 0x10001a95
jmp 0x10001242
mov eax, dword [ebp - 0x1a0]
sub eax, 0x955cc069
je 0x10002797
jmp 0x10001258
mov eax, dword [ebp - 0x1a0]
sub eax, 0x9675a81b
je 0x10002828
jmp 0x1000126e
mov eax, dword [ebp - 0x1a0]
sub eax, 0x9db2f153
je 0x10001f9c
jmp 0x10001284
mov eax, dword [ebp - 0x1a0]
sub eax, 0xa625664c
je 0x10002021
jmp 0x1000129a
mov eax, dword [ebp - 0x1a0]
sub eax, 0xa6756d8d
je 0x100028a2
jmp 0x100012b0
mov eax, dword [ebp - 0x1a0]
sub eax, 0xa8bf597b
je 0x1000248d
jmp 0x100012c6
mov eax, dword [ebp - 0x1a0]
sub eax, 0xad46fb3c
je 0x100018e1
jmp 0x100012dc
mov eax, dword [ebp - 0x1a0]
sub eax, 0xb32dd137
je 0x1000224d
jmp 0x100012f2
mov eax, dword [ebp - 0x1a0]
sub eax, 0xbd714af4
je 0x100025af
jmp 0x10001308
mov eax, dword [ebp - 0x1a0]
sub eax, 0xbdca1542
je 0x100020cd
jmp 0x1000131e
mov eax, dword [ebp - 0x1a0]
sub eax, 0xc39870c9
je 0x10001d59
jmp 0x10001334
mov eax, dword [ebp - 0x1a0]
sub eax, 0xc6f701ae
je 0x10001b95
jmp 0x1000134a
mov eax, dword [ebp - 0x1a0]
sub eax, 0xc8fe4409
je 0x100025a0
jmp 0x10001360
mov eax, dword [ebp - 0x1a0]
sub eax, 0xdbd2792a
je 0x10002837
jmp 0x10001376
mov eax, dword [ebp - 0x1a0]
sub eax, 0xdf2934bf
je 0x100017b8
jmp 0x1000138c
mov eax, dword [ebp - 0x1a0]
sub eax, 0xdfe9d0da
je 0x10001c0b
jmp 0x100013a2
mov eax, dword [ebp - 0x1a0]
sub eax, 0xe0443f25
je 0x10001b74
jmp 0x100013b8
mov eax, dword [ebp - 0x1a0]
sub eax, 0xe14da090
je 0x10001920
jmp 0x100013ce
mov eax, dword [ebp - 0x1a0]
sub eax, 0xe8234a68
je 0x10001c96
jmp 0x100013e4
mov eax, dword [ebp - 0x1a0]
sub eax, 0xeae327ed
je 0x100025db
jmp 0x100013fa
mov eax, dword [ebp - 0x1a0]
sub eax, 0xee6c651f
je 0x1000247e
jmp 0x10001410
mov eax, dword [ebp - 0x1a0]
sub eax, 0xf019d897
je 0x1000284c
jmp 0x10001426
mov eax, dword [ebp - 0x1a0]
sub eax, 0xf4a0b4f4
je 0x10001a27
jmp 0x1000143c
mov eax, dword [ebp - 0x1a0]
sub eax, 0xf6d6a4be
je 0x10001ce7
jmp 0x10001452
mov eax, dword [ebp - 0x1a0]
sub eax, 0x31108cf
je 0x10001b65
jmp 0x10001468
mov eax, dword [ebp - 0x1a0]
sub eax, 0xce13d9e
je 0x10001a18
jmp 0x1000147e
mov eax, dword [ebp - 0x1a0]
sub eax, 0xefe8d93
je 0x1000198c
jmp 0x10001494
mov eax, dword [ebp - 0x1a0]
sub eax, 0x131bafd9
je 0x1000250c
jmp 0x100014aa
mov eax, dword [ebp - 0x1a0]
sub eax, 0x14ef5ab9
je 0x1000249c
jmp 0x100014c0
mov eax, dword [ebp - 0x1a0]
sub eax, 0x1545fecb
je 0x10002150
jmp 0x100014d6
mov eax, dword [ebp - 0x1a0]
sub eax, 0x1a013f8e
je 0x10002392
jmp 0x100014ec
mov eax, dword [ebp - 0x1a0]
sub eax, 0x1b4e045c
je 0x10001a44
jmp 0x10001502
mov eax, dword [ebp - 0x1a0]
sub eax, 0x1e232f88
je 0x100018f0
jmp 0x10001518
mov eax, dword [ebp - 0x1a0]
sub eax, 0x1fa00871
je 0x10002721
jmp 0x1000152e
mov eax, dword [ebp - 0x1a0]
sub eax, 0x21ae7d90
je 0x100019e5
jmp 0x10001544
mov eax, dword [ebp - 0x1a0]
sub eax, 0x2208bfa5
je 0x10002732
jmp 0x1000155a
mov eax, dword [ebp - 0x1a0]
sub eax, 0x2588b0d0
je 0x100027f2
jmp 0x10001570
mov eax, dword [ebp - 0x1a0]
sub eax, 0x25d6c08c
je 0x100025be
jmp 0x10001586
mov eax, dword [ebp - 0x1a0]
sub eax, 0x2e4c4211
je 0x10001efc
jmp 0x1000159c
mov eax, dword [ebp - 0x1a0]
sub eax, 0x3614c75b
je 0x10001911
jmp 0x100015b2
mov eax, dword [ebp - 0x1a0]
sub eax, 0x3705a365
je 0x1000260a
jmp 0x100015c8
mov eax, dword [ebp - 0x1a0]
sub eax, 0x40b7fc6f
je 0x10001de8
jmp 0x100015de
mov eax, dword [ebp - 0x1a0]
sub eax, 0x40edb068
je 0x10001f45
jmp 0x100015f4
mov eax, dword [ebp - 0x1a0]
sub eax, 0x483db5f0
je 0x100022e2
jmp 0x1000160a
mov eax, dword [ebp - 0x1a0]
sub eax, 0x50d65767
je 0x100028b1
jmp 0x10001620
mov eax, dword [ebp - 0x1a0]
sub eax, 0x550d64f1
je 0x100020ac
jmp 0x10001636
mov eax, dword [ebp - 0x1a0]
sub eax, 0x55e7e381
je 0x10001ecf
jmp 0x1000164c
mov eax, dword [ebp - 0x1a0]
sub eax, 0x57109815
je 0x10001d68
jmp 0x10001662
mov eax, dword [ebp - 0x1a0]
sub eax, 0x5ab04cce
je 0x10002712
jmp 0x10001678
mov eax, dword [ebp - 0x1a0]
sub eax, 0x5d4a6600
je 0x10002867
jmp 0x1000168e
mov eax, dword [ebp - 0x1a0]
sub eax, 0x61c4ddc4
je 0x10002408
jmp 0x100016a4
mov eax, dword [ebp - 0x1a0]
sub eax, 0x683aa680
je 0x1000222c
jmp 0x100016ba
mov eax, dword [ebp - 0x1a0]
sub eax, 0x70878b12
je 0x100028ee
jmp 0x100016d0
mov eax, dword [ebp - 0x1a0]
sub eax, 0x70b82850
je 0x10002807
jmp 0x100016e6
mov eax, dword [ebp - 0x1a0]
sub eax, 0x727b443b
je 0x1000176f
jmp 0x100016fc
mov eax, dword [ebp - 0x1a0]
sub eax, 0x7726e118
je 0x10001e7e
jmp 0x10001712
mov eax, dword [ebp - 0x1a0]
sub eax, 0x797e4621
je 0x10001fab
jmp 0x10001728
mov eax, dword [ebp - 0x1a0]
sub eax, 0x7a4cd7e1
je 0x10002120
jmp 0x1000173e
mov eax, dword [ebp - 0x1a0]
sub eax, 0x7aec4178
je 0x10002678
mov eax, dword [0x1006f340]
mov ecx, dword [0x1006f33c]
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, 0x2208bfa5
mov ecx, 0xdf2934bf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov eax, dword [ebp - 0x19c]
push eax
mov ecx, esp
mov dword [ebp - 0x184], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x180], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x17c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x178], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x174], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x170], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x16c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x168], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x164], ecx
mov dword [ebp - 0x188], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x18c], 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.1000faf0
add esp, 0xc
mov eax, dword [ebp - 0x188]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x160], eax
mov ecx, dword [0x1006f340]
mov eax, dword [0x1006f33c]
mov edx, ecx
add edx, 0x6aa6ee59
sub edx, 1
sub edx, 0x6aa6ee59
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, 0x2208bfa5
mov ecx, 0xad46fb3c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov dword [ebp - 0x198], 0x1e232f88
jmp 0x1000291c
mov edx, dword [ebp - 0x160]
mov eax, 0x3614c75b
mov ecx, 0xe14da090
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov dword [ebp - 0x198], 0x1fa00871
jmp 0x1000291c
mov ecx, dword [ebp - 0x190]
mov edx, dword [ebp - 0x18c]
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 - 0x194], eax
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0x190]
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 dword [ebp - 0x198], 0xefe8d93
jmp 0x1000291c
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 - 0x15c], eax
mov dword [ebp - 0x198], 0x21ae7d90
jmp 0x1000291c
mov eax, dword [ebp - 0x184]
mov ecx, dword [ebp - 0x15c]
mov dword [eax], ecx
mov edx, dword [ebp - 0x184]
mov esi, 0xffffffff
mov eax, 0xf4a0b4f4
mov ecx, 0xce13d9e
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov dword [ebp - 0x198], 0x1fa00871
jmp 0x1000291c
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x198], 0x1b4e045c
jmp 0x1000291c
mov eax, dword [0x1006f340]
mov ecx, dword [0x1006f33c]
mov edx, eax
add edx, 0xe8ca77d0
sub edx, 1
sub edx, 0xe8ca77d0
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, 0x955cc069
mov ecx, 0x93268965
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov eax, dword [ebp - 0x158]
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 - 0x180]
mov dword [eax], ecx
mov eax, dword [ebp - 0x180]
cmp dword [eax], 0
setne al
and al, 1
mov byte [ebp - 0x151], al
mov ecx, dword [0x1006f340]
mov eax, dword [0x1006f33c]
mov edx, ecx
add edx, 0xc3baf43b
sub edx, 1
sub edx, 0xc3baf43b
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, 0x955cc069
mov ecx, 0x31108cf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov dword [ebp - 0x198], 0xe0443f25
jmp 0x1000291c
mov dl, byte [ebp - 0x151]
mov eax, 0xc6f701ae
mov ecx, 0x57109815
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov ecx, dword [0x1006f340]
mov eax, dword [0x1006f33c]
mov edx, ecx
add edx, 0x5b1b6eba
sub edx, 1
sub edx, 0x5b1b6eba
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, 0x2588b0d0
mov ecx, 0xdfe9d0da
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov dword [ebp - 0x150], eax
mov ecx, dword [0x1006f340]
mov eax, dword [0x1006f33c]
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, 0x2588b0d0
mov ecx, 0x81b59e52
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov dword [ebp - 0x198], 0xe8234a68
jmp 0x1000291c
mov eax, dword [0x1006f340]
mov ecx, dword [0x1006f33c]
mov edx, eax
add edx, 0x391bbf4b
sub edx, 1
sub edx, 0x391bbf4b
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, 0x70b82850
mov ecx, 0xf6d6a4be
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov eax, dword [ebp - 0x150]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x1006f340]
mov ecx, dword [0x1006f33c]
mov edx, eax
add edx, 0xd38032f8
sub edx, 1
sub edx, 0xd38032f8
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, 0x70b82850
mov ecx, 0x8cfb426f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov dword [ebp - 0x198], 0xc39870c9
jmp 0x1000291c
mov dword [ebp - 0x198], 0x1fa00871
jmp 0x1000291c
mov eax, dword [ebp - 0x180]
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 - 0x17c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x194]
mov eax, dword [ebp - 0x178]
mov dword [eax], ecx
mov eax, dword [ebp - 0x194]
mov ecx, dword [ebp - 0x178]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0x3c]
add eax, 0x9a76b21f
add eax, ecx
sub eax, 0x9a76b21f
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x198], 0x40b7fc6f
jmp 0x1000291c
mov ecx, dword [ebp - 0x14c]
mov eax, dword [ebp - 0x174]
mov dword [eax], ecx
mov eax, dword [ebp - 0x170]
mov word [eax], 0
mov dword [ebp - 0x198], 0x8b46f1db
jmp 0x1000291c
mov ecx, dword [0x1006f340]
mov eax, dword [0x1006f33c]
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, 0x9675a81b
mov ecx, 0x7726e118
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov eax, dword [0x1006f340]
mov ecx, dword [0x1006f33c]
mov edx, eax
sub edx, 0x6f93c298
sub edx, 1
add edx, 0x6f93c298
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, 0x9675a81b
mov ecx, 0x55e7e381
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov dword [ebp - 0x198], 0x8404f49b
jmp 0x1000291c
mov eax, dword [ebp - 0x170]
movzx eax, word [eax]
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x198], 0x2e4c4211
jmp 0x1000291c
mov eax, dword [0x1006f340]
mov ecx, dword [0x1006f33c]
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, 0xdbd2792a
mov ecx, 0x40edb068
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov eax, dword [ebp - 0x174]
mov eax, dword [eax]
mov dword [ebp - 0x144], eax
mov eax, dword [0x1006f340]
mov ecx, dword [0x1006f33c]
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, 0xdbd2792a
mov ecx, 0x9db2f153
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov dword [ebp - 0x198], 0x797e4621
jmp 0x1000291c
mov ecx, dword [0x1006f340]
mov eax, dword [0x1006f33c]
mov edx, ecx
add edx, 0x8e7b5d15
sub edx, 1
sub edx, 0x8e7b5d15
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, 0xf019d897
mov ecx, 0xa625664c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov eax, dword [ebp - 0x144]
movzx ecx, word [eax + 6]
mov eax, dword [ebp - 0x148]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x13d], al
mov ecx, dword [0x1006f340]
mov eax, dword [0x1006f33c]
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, 0xf019d897
mov ecx, 0x550d64f1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov dl, byte [ebp - 0x13d]
mov eax, 0x25d6c08c
mov ecx, 0xbdca1542
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov eax, dword [ebp - 0x174]
mov eax, dword [eax]
sub eax, 0xfd6d6964
add eax, 0x18
add eax, 0xfd6d6964
mov ecx, dword [ebp - 0x174]
mov ecx, dword [ecx]
movzx edx, word [ecx + 0x14]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x13c], eax
mov eax, dword [ebp - 0x170]
movzx eax, word [eax]
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x198], 0x7a4cd7e1
jmp 0x1000291c
mov eax, dword [ebp - 0x138]
imul ecx, eax, 0x28
mov eax, dword [ebp - 0x13c]
sub eax, 0x808def59
add eax, ecx
add eax, 0x808def59
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x198], 0x1545fecb
jmp 0x1000291c
mov eax, dword [0x1006f340]
mov ecx, dword [0x1006f33c]
mov edx, eax
add edx, 0xbe184d46
sub edx, 1
sub edx, 0xbe184d46
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, 0x5d4a6600
mov ecx, 0x8150642d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov eax, dword [ebp - 0x16c]
mov ecx, dword [ebp - 0x134]
mov dword [eax], ecx
mov eax, dword [ebp - 0x16c]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x1001c3b0
call fcn.10011e60
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x12d], al
mov eax, dword [0x1006f340]
mov ecx, dword [0x1006f33c]
mov edx, eax
sub edx, 0x1880ab3f
sub edx, 1
add edx, 0x1880ab3f
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, 0x5d4a6600
mov ecx, 0x683aa680
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov dl, byte [ebp - 0x12d]
mov eax, 0xb32dd137
mov ecx, 0xa8bf597b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov eax, dword [ebp - 0x168]
mov dword [eax], 0
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x194]
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
sub edx, eax
mov eax, dword [ebp - 0x168]
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 - 0x164]
mov byte [eax], cl
mov eax, dword [ebp - 0x194]
mov ecx, dword [ebp - 0x16c]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0xc]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x198], 0x483db5f0
jmp 0x1000291c
mov edx, dword [ebp - 0x12c]
mov eax, dword [ebp - 0x17c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
sub ecx, eax
mov eax, dword [ebp - 0x16c]
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.1000fc50
add esp, 0xc
mov eax, dword [ebp - 0x168]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x194]
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add esi, 0x765af57
add esi, eax
sub esi, 0x765af57
mov eax, dword [ebp - 0x168]
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 - 0x164]
mov byte [eax], cl
mov dword [ebp - 0x198], 0x1a013f8e
jmp 0x1000291c
mov ecx, dword [0x1006f340]
mov eax, dword [0x1006f33c]
mov edx, ecx
sub edx, 0x5d95db9f
sub edx, 1
add edx, 0x5d95db9f
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, 0xa6756d8d
mov ecx, 0x61c4ddc4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov ecx, dword [0x1006f340]
mov eax, dword [0x1006f33c]
mov edx, ecx
sub edx, 0xb2f52aef
sub edx, 1
add edx, 0xb2f52aef
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, 0xa6756d8d
mov ecx, 0xee6c651f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov dword [ebp - 0x198], 0xa8bf597b
jmp 0x1000291c
mov dword [ebp - 0x198], 0x14ef5ab9
jmp 0x1000291c
mov eax, dword [ebp - 0x170]
mov ax, word [eax]
mov word [ebp - 0x126], ax
mov dword [ebp - 0x198], 0x7bae4aba
jmp 0x1000291c
mov cx, word [ebp - 0x126]
sub cx, 0x424c
add cx, 1
add cx, 0x424c
mov eax, dword [ebp - 0x170]
mov word [eax], cx
mov ecx, dword [0x1006f340]
mov eax, dword [0x1006f33c]
mov edx, ecx
sub edx, 0x3f7b187d
sub edx, 1
add edx, 0x3f7b187d
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, 0x50d65767
mov ecx, 0xc8fe4409
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov dword [ebp - 0x198], 0xbd714af4
jmp 0x1000291c
mov dword [ebp - 0x198], 0x8404f49b
jmp 0x1000291c
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x198], 0xeae327ed
jmp 0x1000291c
mov eax, dword [ebp - 0x124]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x180]
mov eax, dword [eax]
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x198], 0x3705a365
jmp 0x1000291c
mov ecx, dword [0x1006f340]
mov eax, dword [0x1006f33c]
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, 0x70878b12
mov ecx, 0x7aec4178
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x1000291c
mov dword [ebp - 0x198], 0x1fa00871
jmp 0x1000291c
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.1000eef0
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x188], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x18c], 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.1000faf0
add esp, 0xc
mov eax, dword [ebp - 0x188]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x198], 0xdf2934bf
jmp 0x1000291c
mov eax, dword [ebp - 0x158]
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 - 0x180]
mov dword [eax], ecx
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x198], 0x93268965
jmp 0x1000291c
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x198], 0xdfe9d0da
jmp 0x1000291c
mov eax, dword [ebp - 0x150]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x198], 0xf6d6a4be
jmp 0x1000291c
mov dword [ebp - 0x198], 0x7726e118
jmp 0x1000291c
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x198], 0x40edb068
jmp 0x1000291c
mov eax, dword [ebp - 0x144]
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0x198], 0xa625664c
jmp 0x1000291c
mov eax, dword [ebp - 0x16c]
mov ecx, dword [ebp - 0x134]
mov dword [eax], ecx
mov eax, dword [ebp - 0x16c]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x1001c3b0
call fcn.10011e60
add esp, 8
mov dword [ebp - 0x198], 0x8150642d
jmp 0x1000291c
mov dword [ebp - 0x198], 0x61c4ddc4
jmp 0x1000291c
mov ax, word [ebp - 0x126]
mov ax, word [ebp - 0x126]
mov ax, word [ebp - 0x126]
mov cx, word [ebp - 0x126]
xor eax, eax
sub ax, 1
sub cx, ax
mov eax, dword [ebp - 0x170]
mov word [eax], cx
mov dword [ebp - 0x198], 0x131bafd9
jmp 0x1000291c
mov eax, dword [ebp - 0x120]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x18c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x198], 0x7aec4178
jmp 0x100011b8