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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x9c
mov eax, dword [ebp + 8]
mov dword [ebp - 0xa4], eax
mov eax, dword [0x1008a080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xa0], 0xeddeda7b
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0xa8], eax
sub eax, 0x81f02241
je 0x1000f2a1
jmp 0x1000df75
mov eax, dword [ebp - 0xa8]
sub eax, 0x875f47f4
je 0x1000e774
jmp 0x1000df8b
mov eax, dword [ebp - 0xa8]
sub eax, 0x8b0ba387
je 0x1000ebec
jmp 0x1000dfa1
mov eax, dword [ebp - 0xa8]
sub eax, 0x95c6c50c
je 0x1000f031
jmp 0x1000dfb7
mov eax, dword [ebp - 0xa8]
sub eax, 0x961b1a60
je 0x1000ebd2
jmp 0x1000dfcd
mov eax, dword [ebp - 0xa8]
sub eax, 0x98c91e23
je 0x1000e7ea
jmp 0x1000dfe3
mov eax, dword [ebp - 0xa8]
sub eax, 0xa06075df
je 0x1000f138
jmp 0x1000dff9
mov eax, dword [ebp - 0xa8]
sub eax, 0xa1632993
je 0x1000ed85
jmp 0x1000e00f
mov eax, dword [ebp - 0xa8]
sub eax, 0xa2943b37
je 0x1000e88d
jmp 0x1000e025
mov eax, dword [ebp - 0xa8]
sub eax, 0xaaf8a914
je 0x1000f28c
jmp 0x1000e03b
mov eax, dword [ebp - 0xa8]
sub eax, 0xab70a659
je 0x1000e973
jmp 0x1000e051
mov eax, dword [ebp - 0xa8]
sub eax, 0xb6e203fe
je 0x1000e8f5
jmp 0x1000e067
mov eax, dword [ebp - 0xa8]
sub eax, 0xbb3ac8f5
je 0x1000ea92
jmp 0x1000e07d
mov eax, dword [ebp - 0xa8]
sub eax, 0xcf258b3e
je 0x1000eba4
jmp 0x1000e093
mov eax, dword [ebp - 0xa8]
sub eax, 0xd26eddd2
je 0x1000e6bf
jmp 0x1000e0a9
mov eax, dword [ebp - 0xa8]
sub eax, 0xd5290c7d
je 0x1000f0cb
jmp 0x1000e0bf
mov eax, dword [ebp - 0xa8]
sub eax, 0xd5538d0b
je 0x1000e87e
jmp 0x1000e0d5
mov eax, dword [ebp - 0xa8]
sub eax, 0xd5d27294
je 0x1000f0f4
jmp 0x1000e0eb
mov eax, dword [ebp - 0xa8]
sub eax, 0xd7dbfb0f
je 0x1000f218
jmp 0x1000e101
mov eax, dword [ebp - 0xa8]
sub eax, 0xde23626d
je 0x1000f227
jmp 0x1000e117
mov eax, dword [ebp - 0xa8]
sub eax, 0xeddeda7b
je 0x1000e48c
jmp 0x1000e12d
mov eax, dword [ebp - 0xa8]
sub eax, 0xf2a6cbc4
je 0x1000eea3
jmp 0x1000e143
mov eax, dword [ebp - 0xa8]
sub eax, 0x2232cab
je 0x1000e8e6
jmp 0x1000e159
mov eax, dword [ebp - 0xa8]
sub eax, 0x2902451
je 0x1000ef28
jmp 0x1000e16f
mov eax, dword [ebp - 0xa8]
sub eax, 0x9de146f
je 0x1000ef37
jmp 0x1000e185
mov eax, dword [ebp - 0xa8]
sub eax, 0xb2d11de
je 0x1000f34d
jmp 0x1000e19b
mov eax, dword [ebp - 0xa8]
sub eax, 0x18215484
je 0x1000e66e
jmp 0x1000e1b1
mov eax, dword [ebp - 0xa8]
sub eax, 0x1924fe22
je 0x1000ef80
jmp 0x1000e1c7
mov eax, dword [ebp - 0xa8]
sub eax, 0x1a799dfc
je 0x1000e75a
jmp 0x1000e1dd
mov eax, dword [ebp - 0xa8]
sub eax, 0x2215738a
je 0x1000ed76
jmp 0x1000e1f3
mov eax, dword [ebp - 0xa8]
sub eax, 0x27732d0a
je 0x1000e55f
jmp 0x1000e209
mov eax, dword [ebp - 0xa8]
sub eax, 0x2aa7537c
je 0x1000ef19
jmp 0x1000e21f
mov eax, dword [ebp - 0xa8]
sub eax, 0x2afe2fe1
je 0x1000eb08
jmp 0x1000e235
mov eax, dword [ebp - 0xa8]
sub eax, 0x2b055914
je 0x1000f189
jmp 0x1000e24b
mov eax, dword [ebp - 0xa8]
sub eax, 0x2c0fe943
je 0x1000ea83
jmp 0x1000e261
mov eax, dword [ebp - 0xa8]
sub eax, 0x2dea6d8d
je 0x1000e72d
jmp 0x1000e277
mov eax, dword [ebp - 0xa8]
sub eax, 0x33041317
je 0x1000e58c
jmp 0x1000e28d
mov eax, dword [ebp - 0xa8]
sub eax, 0x36a1d01b
je 0x1000e74b
jmp 0x1000e2a3
mov eax, dword [ebp - 0xa8]
sub eax, 0x430b87e9
je 0x1000e8ae
jmp 0x1000e2b9
mov eax, dword [ebp - 0xa8]
sub eax, 0x43fc005e
je 0x1000e94e
jmp 0x1000e2cf
mov eax, dword [ebp - 0xa8]
sub eax, 0x44e86382
je 0x1000eb86
jmp 0x1000e2e5
mov eax, dword [ebp - 0xa8]
sub eax, 0x450cc115
je 0x1000f279
jmp 0x1000e2fb
mov eax, dword [ebp - 0xa8]
sub eax, 0x46dd9f0d
je 0x1000f0da
jmp 0x1000e311
mov eax, dword [ebp - 0xa8]
sub eax, 0x4fee1b58
je 0x1000e8c8
jmp 0x1000e327
mov eax, dword [ebp - 0xa8]
sub eax, 0x507cb7b7
je 0x1000e99d
jmp 0x1000e33d
mov eax, dword [ebp - 0xa8]
sub eax, 0x52631937
je 0x1000f33e
jmp 0x1000e353
mov eax, dword [ebp - 0xa8]
sub eax, 0x57038373
je 0x1000ec99
jmp 0x1000e369
mov eax, dword [ebp - 0xa8]
sub eax, 0x5748ed7b
je 0x1000f315
jmp 0x1000e37f
mov eax, dword [ebp - 0xa8]
sub eax, 0x57efda7f
je 0x1000ec50
jmp 0x1000e395
mov eax, dword [ebp - 0xa8]
sub eax, 0x5e42f187
je 0x1000ea30
jmp 0x1000e3ab
mov eax, dword [ebp - 0xa8]
sub eax, 0x5e5127c7
je 0x1000f206
jmp 0x1000e3c1
mov eax, dword [ebp - 0xa8]
sub eax, 0x657d9aa8
je 0x1000f082
jmp 0x1000e3d7
mov eax, dword [ebp - 0xa8]
sub eax, 0x6778d033
je 0x1000f32c
jmp 0x1000e3ed
mov eax, dword [ebp - 0xa8]
sub eax, 0x70bc1e73
je 0x1000e57d
jmp 0x1000e403
mov eax, dword [ebp - 0xa8]
sub eax, 0x71ef27c6
je 0x1000ee35
jmp 0x1000e419
mov eax, dword [ebp - 0xa8]
sub eax, 0x735c0a42
je 0x1000f018
jmp 0x1000e42f
mov eax, dword [ebp - 0xa8]
sub eax, 0x76dc1c1e
je 0x1000e9c2
jmp 0x1000e445
mov eax, dword [ebp - 0xa8]
sub eax, 0x78f9cb28
je 0x1000f009
jmp 0x1000e45b
mov eax, dword [ebp - 0xa8]
sub eax, 0x7a3c2f2e
je 0x1000e63f
jmp 0x1000e471
mov eax, dword [ebp - 0xa8]
sub eax, 0x7c29726b
je 0x1000f1f7
jmp 0x1000e487
jmp 0x1000f357
mov eax, dword [ebp - 0xa4]
push eax
mov ecx, esp
mov dword [ebp - 0x94], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x90], ecx
sub esp, 0x104
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
push eax
mov ecx, esp
mov dword [ebp - 0x6c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x68], 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.10029e90
add esp, 0xc
mov eax, dword [ebp - 0x98]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, eax
mov eax, dword [ebp - 0x94]
mov dword [eax], ecx
mov eax, dword [ebp - 0x94]
cmp dword [eax], 0
setne al
and al, 1
mov byte [ebp - 0x61], al
mov dword [ebp - 0xa0], 0x27732d0a
jmp 0x1000f357
mov dl, byte [ebp - 0x61]
mov eax, 0x70bc1e73
mov ecx, 0x33041317
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov dword [ebp - 0xa0], 0x5e5127c7
jmp 0x1000f357
mov eax, dword [ebp - 0x94]
mov ecx, dword [eax]
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 ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x90]
mov dword [eax], ecx
mov eax, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x94]
mov ecx, dword [ecx]
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 - 0x8c]
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 - 0x60], eax
mov dword [ebp - 0xa0], 0x7a3c2f2e
jmp 0x1000f357
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x60]
mov dword [eax], ecx
mov eax, dword [ebp - 0x88]
mov ecx, 0xffffffff
cmp dword [eax], ecx
sete al
and al, 1
mov byte [ebp - 0x59], al
mov dword [ebp - 0xa0], 0x18215484
jmp 0x1000f357
mov eax, dword [0x1008b55c]
mov ecx, dword [0x1008b558]
mov edx, eax
sub edx, 0xe7938294
sub edx, 1
add edx, 0xe7938294
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, 0xd7dbfb0f
mov ecx, 0xd26eddd2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov ecx, dword [0x1008b55c]
mov eax, dword [0x1008b558]
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, 0xd7dbfb0f
mov ecx, 0x2dea6d8d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov dl, byte [ebp - 0x59]
mov eax, 0x1a799dfc
mov ecx, 0x36a1d01b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov dword [ebp - 0xa0], 0x5e5127c7
jmp 0x1000f357
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0xa0], 0x875f47f4
jmp 0x1000f357
mov ecx, dword [0x1008b55c]
mov eax, dword [0x1008b558]
mov edx, ecx
sub edx, 0x87dc675b
sub edx, 1
add edx, 0x87dc675b
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, 0xde23626d
mov ecx, 0x98c91e23
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov eax, dword [ebp - 0x58]
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 - 0x84]
mov dword [eax], ecx
mov eax, dword [0x1008b55c]
mov ecx, dword [0x1008b558]
mov edx, eax
add edx, 0xccd8afcc
sub edx, 1
sub edx, 0xccd8afcc
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, 0xde23626d
mov ecx, 0xd5538d0b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov dword [ebp - 0xa0], 0xa2943b37
jmp 0x1000f357
mov edx, dword [ebp - 0x84]
mov eax, 0x430b87e9
mov ecx, 0xb6e203fe
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0xa0], 0x4fee1b58
jmp 0x1000f357
mov eax, dword [ebp - 0x54]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa0], 0x2232cab
jmp 0x1000f357
mov dword [ebp - 0xa0], 0x5e5127c7
jmp 0x1000f357
mov eax, dword [ebp - 0x84]
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 - 0x80]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x7c]
mov dword [eax], ecx
mov dword [ebp - 0xa0], 0x43fc005e
jmp 0x1000f357
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
add eax, 0x3c
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0xa0], 0xab70a659
jmp 0x1000f357
mov eax, dword [ebp - 0x4c]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x50]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x78]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
mov word [eax], 0
mov dword [ebp - 0xa0], 0x507cb7b7
jmp 0x1000f357
mov eax, dword [ebp - 0x74]
movzx eax, word [eax]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov ax, word [eax + 6]
mov word [ebp - 0x42], ax
mov dword [ebp - 0xa0], 0x76dc1c1e
jmp 0x1000f357
mov ecx, dword [0x1008b55c]
mov eax, dword [0x1008b558]
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, 0x450cc115
mov ecx, 0x5e42f187
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov ax, word [ebp - 0x42]
movzx eax, ax
mov dword [ebp - 0x40], eax
mov eax, dword [0x1008b55c]
mov ecx, dword [0x1008b558]
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, 0x450cc115
mov ecx, 0x2c0fe943
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov dword [ebp - 0xa0], 0xbb3ac8f5
jmp 0x1000f357
mov ecx, dword [0x1008b55c]
mov eax, dword [0x1008b558]
mov edx, ecx
sub edx, 0x33a45e1a
sub edx, 1
add edx, 0x33a45e1a
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, 0xaaf8a914
mov ecx, 0x2afe2fe1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x40]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x39], al
mov ecx, dword [0x1008b55c]
mov eax, dword [0x1008b558]
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, 0xaaf8a914
mov ecx, 0x44e86382
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov dl, byte [ebp - 0x39]
mov eax, 0x46dd9f0d
mov ecx, 0xcf258b3e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x18
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0xa0], 0x961b1a60
jmp 0x1000f357
mov eax, dword [ebp - 0x34]
mov ax, word [eax + 0x14]
mov word [ebp - 0x2e], ax
mov dword [ebp - 0xa0], 0x8b0ba387
jmp 0x1000f357
mov ax, word [ebp - 0x2e]
movzx eax, ax
mov ecx, dword [ebp - 0x38]
sub ecx, 0xfedebaa8
add ecx, eax
add ecx, 0xfedebaa8
mov eax, dword [ebp - 0x74]
movzx eax, word [eax]
imul edx, eax, 0x28
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x70]
mov dword [eax], ecx
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100378de
call fcn.1002d7f0
add esp, 8
mov edx, eax
mov eax, 0x57efda7f
mov ecx, 0x2902451
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov eax, dword [0x1008b55c]
mov ecx, dword [0x1008b558]
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, 0x81f02241
mov ecx, 0x57038373
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov eax, dword [ebp - 0x6c]
mov dword [eax], 0
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x90]
mov edx, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, edx
xor edx, edx
sub edx, esi
add eax, edx
xor edx, edx
sub edx, eax
mov eax, dword [ebp - 0x6c]
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 - 0x68]
mov byte [eax], cl
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov ecx, dword [0x1008b55c]
mov eax, dword [0x1008b558]
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, 0x81f02241
mov ecx, 0x2215738a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov dword [ebp - 0xa0], 0xa1632993
jmp 0x1000f357
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 0x2c]
add edx, 0xa5a3a668
add edx, eax
sub edx, 0xa5a3a668
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add ecx, 0xe47cf8c6
add ecx, eax
sub ecx, 0xe47cf8c6
mov eax, dword [ebp - 0x70]
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.10029ff0
add esp, 0xc
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov eax, dword [ebp - 0x90]
mov esi, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
xor esi, esi
sub esi, edi
add eax, esi
xor esi, esi
sub esi, eax
mov eax, dword [ebp - 0x6c]
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 al
and al, 1
mov byte [ebp - 0x23], al
mov dword [ebp - 0xa0], 0x71ef27c6
jmp 0x1000f357
mov ecx, dword [0x1008b55c]
mov eax, dword [0x1008b558]
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, 0x5748ed7b
mov ecx, 0xf2a6cbc4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov eax, dword [ebp - 0x68]
mov cl, byte [ebp - 0x23]
mov byte [eax], cl
mov ecx, dword [0x1008b55c]
mov eax, dword [0x1008b558]
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, 0x5748ed7b
mov ecx, 0x2aa7537c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov dword [ebp - 0xa0], 0x2902451
jmp 0x1000f357
mov dword [ebp - 0xa0], 0x9de146f
jmp 0x1000f357
mov eax, dword [0x1008b55c]
mov ecx, dword [0x1008b558]
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, 0x6778d033
mov ecx, 0x1924fe22
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov eax, dword [ebp - 0x74]
mov ax, word [eax]
xor ecx, ecx
sub cx, 1
sub ax, cx
mov word [ebp - 0x22], ax
mov ecx, dword [0x1008b55c]
mov eax, dword [0x1008b558]
mov edx, ecx
sub edx, 0xe3bfc329
sub edx, 1
add edx, 0xe3bfc329
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, 0x6778d033
mov ecx, 0x78f9cb28
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov dword [ebp - 0xa0], 0x735c0a42
jmp 0x1000f357
mov eax, dword [ebp - 0x74]
mov cx, word [ebp - 0x22]
mov word [eax], cx
mov dword [ebp - 0xa0], 0x95c6c50c
jmp 0x1000f357
mov eax, dword [0x1008b55c]
mov ecx, dword [0x1008b558]
mov edx, eax
sub edx, 0x21133f90
sub edx, 1
add edx, 0x21133f90
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, 0x52631937
mov ecx, 0x657d9aa8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov eax, dword [0x1008b55c]
mov ecx, dword [0x1008b558]
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, 0x52631937
mov ecx, 0xd5290c7d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov dword [ebp - 0xa0], 0x507cb7b7
jmp 0x1000f357
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0xa0], 0xd5d27294
jmp 0x1000f357
mov eax, dword [ebp - 0x20]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x84]
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 - 0xa0], 0xa06075df
jmp 0x1000f357
mov eax, dword [0x1008b55c]
mov ecx, dword [0x1008b558]
mov edx, eax
sub edx, 0x1c6f649e
sub edx, 1
add edx, 0x1c6f649e
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, 0xb2d11de
mov ecx, 0x2b055914
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov ecx, dword [0x1008b55c]
mov eax, dword [0x1008b558]
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, 0xb2d11de
mov ecx, 0x7c29726b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000f357
mov dword [ebp - 0xa0], 0x5e5127c7
jmp 0x1000f357
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100290f0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0xa0], 0xd26eddd2
jmp 0x1000f357
mov eax, dword [ebp - 0x58]
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 - 0x84]
mov dword [eax], ecx
mov dword [ebp - 0xa0], 0x98c91e23
jmp 0x1000f357
mov ax, word [ebp - 0x42]
mov dword [ebp - 0xa0], 0x5e42f187
jmp 0x1000f357
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0xa0], 0x2afe2fe1
jmp 0x1000f357
mov eax, dword [ebp - 0x6c]
mov dword [eax], 0
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x90]
mov edx, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, edx
xor edx, edx
sub edx, esi
add eax, edx
xor edx, edx
sub edx, eax
mov eax, dword [ebp - 0x6c]
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 - 0x68]
mov byte [eax], cl
mov eax, dword [ebp - 0x90]
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0xa0], 0x57038373
jmp 0x1000f357
mov eax, dword [ebp - 0x68]
mov cl, byte [ebp - 0x23]
mov byte [eax], cl
mov dword [ebp - 0xa0], 0xf2a6cbc4
jmp 0x1000f357
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0xa0], 0x1924fe22
jmp 0x1000f357
mov dword [ebp - 0xa0], 0x657d9aa8
jmp 0x1000f357
mov dword [ebp - 0xa0], 0x2b055914
jmp 0x1000df59