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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x88
mov eax, dword [ebp + 8]
mov dword [ebp - 0x90], eax
mov eax, dword [0x1008f880]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x10090d5c]
mov eax, dword [0x10090d58]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x86], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x85], al
mov dword [ebp - 0x8c], 0xea05d5c0
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x94], eax
sub eax, 0x839542d1
je 0x10011c40
jmp 0x1001079c
mov eax, dword [ebp - 0x94]
sub eax, 0x8582c1b3
je 0x100116c7
jmp 0x100107b2
mov eax, dword [ebp - 0x94]
sub eax, 0x87f27593
je 0x10011c86
jmp 0x100107c8
mov eax, dword [ebp - 0x94]
sub eax, 0x895a4b7c
je 0x1001112c
jmp 0x100107de
mov eax, dword [ebp - 0x94]
sub eax, 0x9010bdff
je 0x10011254
jmp 0x100107f4
mov eax, dword [ebp - 0x94]
sub eax, 0x915f443b
je 0x100110ff
jmp 0x1001080a
mov eax, dword [ebp - 0x94]
sub eax, 0x97540c2e
je 0x100119f3
jmp 0x10010820
mov eax, dword [ebp - 0x94]
sub eax, 0x98edf4af
je 0x10011bf9
jmp 0x10010836
mov eax, dword [ebp - 0x94]
sub eax, 0x9d385cf6
je 0x1001110e
jmp 0x1001084c
mov eax, dword [ebp - 0x94]
sub eax, 0x9f415fd0
je 0x10010ee3
jmp 0x10010862
mov eax, dword [ebp - 0x94]
sub eax, 0xa7b77d01
je 0x100115b6
jmp 0x10010878
mov eax, dword [ebp - 0x94]
sub eax, 0xaa07b1f9
je 0x10011af1
jmp 0x1001088e
mov eax, dword [ebp - 0x94]
sub eax, 0xaa5bb534
je 0x10011542
jmp 0x100108a4
mov eax, dword [ebp - 0x94]
sub eax, 0xac334a82
je 0x10011d3d
jmp 0x100108ba
mov eax, dword [ebp - 0x94]
sub eax, 0xb265fce0
je 0x10011b71
jmp 0x100108d0
mov eax, dword [ebp - 0x94]
sub eax, 0xb2cb40a5
je 0x10011c22
jmp 0x100108e6
mov eax, dword [ebp - 0x94]
sub eax, 0xb3a07374
je 0x10011d4f
jmp 0x100108fc
mov eax, dword [ebp - 0x94]
sub eax, 0xb5aeef71
je 0x1001190c
jmp 0x10010912
mov eax, dword [ebp - 0x94]
sub eax, 0xb660681b
je 0x100117f4
jmp 0x10010928
mov eax, dword [ebp - 0x94]
sub eax, 0xc07f0386
je 0x10011b20
jmp 0x1001093e
mov eax, dword [ebp - 0x94]
sub eax, 0xc608eb9a
je 0x10010e4e
jmp 0x10010954
mov eax, dword [ebp - 0x94]
sub eax, 0xcc61f798
je 0x10011445
jmp 0x1001096a
mov eax, dword [ebp - 0x94]
sub eax, 0xcc7c3194
je 0x10011621
jmp 0x10010980
mov eax, dword [ebp - 0x94]
sub eax, 0xd3030c7a
je 0x100115a7
jmp 0x10010996
mov eax, dword [ebp - 0x94]
sub eax, 0xd48ced3c
je 0x10011be7
jmp 0x100109ac
mov eax, dword [ebp - 0x94]
sub eax, 0xd68816d4
je 0x100112de
jmp 0x100109c2
mov eax, dword [ebp - 0x94]
sub eax, 0xdd034625
je 0x10011871
jmp 0x100109d8
mov eax, dword [ebp - 0x94]
sub eax, 0xdf1d8aee
je 0x10011081
jmp 0x100109ee
mov eax, dword [ebp - 0x94]
sub eax, 0xe40a06e1
je 0x100119d5
jmp 0x10010a04
mov eax, dword [ebp - 0x94]
sub eax, 0xe4fc4e3a
je 0x10011c5e
jmp 0x10010a1a
mov eax, dword [ebp - 0x94]
sub eax, 0xea05d5c0
je 0x10010d4d
jmp 0x10010a30
mov eax, dword [ebp - 0x94]
sub eax, 0xea560fa2
je 0x10011030
jmp 0x10010a46
mov eax, dword [ebp - 0x94]
sub eax, 0xea6c60e3
je 0x10011a69
jmp 0x10010a5c
mov eax, dword [ebp - 0x94]
sub eax, 0xeed1a3dd
je 0x10011378
jmp 0x10010a72
mov eax, dword [ebp - 0x94]
sub eax, 0xf288e30e
je 0x1001132f
jmp 0x10010a88
mov eax, dword [ebp - 0x94]
sub eax, 0xf86d29f8
je 0x10011143
jmp 0x10010a9e
mov eax, dword [ebp - 0x94]
sub eax, 0xfbb6942f
je 0x10010f29
jmp 0x10010ab4
mov eax, dword [ebp - 0x94]
sub eax, 0x1c3d2fe
je 0x10010ec5
jmp 0x10010aca
mov eax, dword [ebp - 0x94]
sub eax, 0x7b76621
je 0x1001197a
jmp 0x10010ae0
mov eax, dword [ebp - 0x94]
sub eax, 0xa503afa
je 0x100115f6
jmp 0x10010af6
mov eax, dword [ebp - 0x94]
sub eax, 0xbc3e7a8
je 0x10011236
jmp 0x10010b0c
mov eax, dword [ebp - 0x94]
sub eax, 0x1634a765
je 0x10011387
jmp 0x10010b22
mov eax, dword [ebp - 0x94]
sub eax, 0x1854a791
je 0x100114f1
jmp 0x10010b38
mov eax, dword [ebp - 0x94]
sub eax, 0x1cef3d1b
je 0x10010fd4
jmp 0x10010b4e
mov eax, dword [ebp - 0x94]
sub eax, 0x21ee582c
je 0x10011d68
jmp 0x10010b64
mov eax, dword [ebp - 0x94]
sub eax, 0x23eb09d0
je 0x10011803
jmp 0x10010b7a
mov eax, dword [ebp - 0x94]
sub eax, 0x240e5e21
je 0x10011c08
jmp 0x10010b90
mov eax, dword [ebp - 0x94]
sub eax, 0x24a30ad0
je 0x100113ad
jmp 0x10010ba6
mov eax, dword [ebp - 0x94]
sub eax, 0x28a735ff
je 0x100114b4
jmp 0x10010bbc
mov eax, dword [ebp - 0x94]
sub eax, 0x2a8a362e
je 0x100119e4
jmp 0x10010bd2
mov eax, dword [ebp - 0x94]
sub eax, 0x2aeb8d70
je 0x100117e5
jmp 0x10010be8
mov eax, dword [ebp - 0x94]
sub eax, 0x34ee6a6b
je 0x10011ada
jmp 0x10010bfe
mov eax, dword [ebp - 0x94]
sub eax, 0x3c25c547
je 0x10011acb
jmp 0x10010c14
mov eax, dword [ebp - 0x94]
sub eax, 0x433d9236
je 0x100118fd
jmp 0x10010c2a
mov eax, dword [ebp - 0x94]
sub eax, 0x44638d7b
je 0x10011245
jmp 0x10010c40
mov eax, dword [ebp - 0x94]
sub eax, 0x469e01fc
je 0x100111b1
jmp 0x10010c56
mov eax, dword [ebp - 0x94]
sub eax, 0x4bd1db62
je 0x10011d88
jmp 0x10010c6c
mov eax, dword [ebp - 0x94]
sub eax, 0x5e0863dd
je 0x10011c4f
jmp 0x10010c82
mov eax, dword [ebp - 0x94]
sub eax, 0x619399ac
je 0x10010fe3
jmp 0x10010c98
mov eax, dword [ebp - 0x94]
sub eax, 0x62da9e12
je 0x10010fb2
jmp 0x10010cae
mov eax, dword [ebp - 0x94]
sub eax, 0x6e6cb99d
je 0x10011676
jmp 0x10010cc4
mov eax, dword [ebp - 0x94]
sub eax, 0x70117d00
je 0x10010d7c
jmp 0x10010cda
mov eax, dword [ebp - 0x94]
sub eax, 0x701567b9
je 0x10010e5d
jmp 0x10010cf0
mov eax, dword [ebp - 0x94]
sub eax, 0x733883fb
je 0x1001129d
jmp 0x10010d06
mov eax, dword [ebp - 0x94]
sub eax, 0x73759edb
je 0x100113cf
mov al, byte [ebp - 0x86]
mov cl, byte [ebp - 0x85]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x98edf4af
mov ecx, 0x70117d00
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
push eax
mov eax, esp
mov dword [ebp - 0x84], eax
push eax
mov eax, esp
mov dword [ebp - 0x80], eax
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x7c], eax
push eax
mov eax, esp
mov dword [ebp - 0x78], eax
push eax
mov eax, esp
mov dword [ebp - 0x74], eax
sub esp, 0x104
mov eax, esp
mov dword [ebp - 0x70], eax
push eax
mov eax, esp
mov dword [ebp - 0x6c], eax
push eax
mov eax, esp
mov dword [ebp - 0x68], eax
push eax
mov eax, esp
mov dword [ebp - 0x64], eax
push eax
mov eax, esp
mov dword [ebp - 0x60], eax
push eax
mov eax, esp
mov dword [ebp - 0x5c], eax
push eax
mov eax, esp
mov dword [ebp - 0x58], eax
push eax
mov eax, esp
mov dword [ebp - 0x54], eax
push eax
mov eax, esp
mov dword [ebp - 0x50], eax
push eax
mov eax, esp
mov dword [ebp - 0x4c], eax
mov ecx, dword [0x10090d5c]
mov eax, dword [0x10090d58]
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, 0x98edf4af
mov ecx, 0xc608eb9a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov dword [ebp - 0x8c], 0x701567b9
jmp 0x10011d92
mov ecx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x84]
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0x80]
mov dword [eax], ecx
mov eax, dword [ebp - 0x7c]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.1002cbd0
add esp, 0xc
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, eax
mov eax, dword [ebp - 0x78]
mov dword [eax], ecx
mov dword [ebp - 0x8c], 0x1c3d2fe
jmp 0x10011d92
mov edx, dword [ebp - 0x78]
mov eax, 0x9f415fd0
mov ecx, 0x7a91778d
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov dword [ebp - 0x8c], 0xc07f0386
jmp 0x10011d92
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x74]
mov dword [eax], ecx
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x78]
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 - 0x70]
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 - 0x6c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x8c], 0x62da9e12
jmp 0x10011d92
mov edx, dword [ebp - 0x48]
mov esi, 0xffffffff
mov eax, 0x619399ac
mov ecx, 0x1cef3d1b
cmp edx, esi
cmove eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov dword [ebp - 0x8c], 0xc07f0386
jmp 0x10011d92
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
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 - 0x44], eax
mov dword [ebp - 0x8c], 0xea560fa2
jmp 0x10011d92
mov eax, dword [0x10090d5c]
mov ecx, dword [0x10090d58]
mov edx, eax
sub edx, 0x73b80cd8
sub edx, 1
add edx, 0x73b80cd8
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, 0x240e5e21
mov ecx, 0xdf1d8aee
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x44]
mov dword [eax], ecx
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov dword [ebp - 0x40], eax
mov ecx, dword [0x10090d5c]
mov eax, dword [0x10090d58]
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, 0x240e5e21
mov ecx, 0x915f443b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov dword [ebp - 0x8c], 0x9d385cf6
jmp 0x10011d92
mov edx, dword [ebp - 0x40]
mov eax, 0x895a4b7c
mov ecx, 0x9010bdff
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x8c], 0xf86d29f8
jmp 0x10011d92
mov ecx, dword [0x10090d5c]
mov eax, dword [0x10090d58]
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, 0xb2cb40a5
mov ecx, 0x469e01fc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov eax, dword [ebp - 0x3c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x10090d5c]
mov eax, dword [0x10090d58]
mov edx, ecx
sub edx, 0x4fdad06
sub edx, 1
add edx, 0x4fdad06
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, 0xb2cb40a5
mov ecx, 0xbc3e7a8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov dword [ebp - 0x8c], 0x44638d7b
jmp 0x10011d92
mov dword [ebp - 0x8c], 0xc07f0386
jmp 0x10011d92
mov eax, dword [ebp - 0x68]
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 - 0x64]
mov dword [eax], ecx
mov dword [ebp - 0x8c], 0x733883fb
jmp 0x10011d92
mov eax, dword [ebp - 0x74]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x60]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x60]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c]
sub ecx, 0xe131b0a2
add ecx, eax
add ecx, 0xe131b0a2
mov eax, dword [ebp - 0x5c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x58]
mov word [eax], 0
mov dword [ebp - 0x8c], 0xd68816d4
jmp 0x10011d92
mov eax, dword [0x10090d5c]
mov ecx, dword [0x10090d58]
mov edx, eax
add edx, 0x64f7b194
sub edx, 1
sub edx, 0x64f7b194
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, 0x839542d1
mov ecx, 0xf288e30e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov eax, dword [0x10090d5c]
mov ecx, dword [0x10090d58]
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, 0x839542d1
mov ecx, 0xeed1a3dd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov dword [ebp - 0x8c], 0x1634a765
jmp 0x10011d92
mov eax, dword [ebp - 0x58]
movzx eax, word [eax]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
add eax, 4
add eax, 2
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x8c], 0x24a30ad0
jmp 0x10011d92
mov eax, dword [ebp - 0x34]
movzx ecx, word [eax]
mov eax, dword [ebp - 0x38]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x2d], al
mov dword [ebp - 0x8c], 0x73759edb
jmp 0x10011d92
mov eax, dword [0x10090d5c]
mov ecx, dword [0x10090d58]
mov edx, eax
add edx, 0x428abc7b
sub edx, 1
sub edx, 0x428abc7b
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, 0x5e0863dd
mov ecx, 0x75727c13
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, 0x18
sub eax, ecx
mov ecx, dword [ebp - 0x5c]
mov ecx, dword [ecx]
movzx ecx, word [ecx + 0x14]
add eax, 0x7259bbee
add eax, ecx
sub eax, 0x7259bbee
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x58]
mov ax, word [eax]
mov word [ebp - 0x26], ax
mov dword [ebp - 0x8c], 0x1854a791
jmp 0x10011d92
mov eax, dword [0x10090d5c]
mov ecx, dword [0x10090d58]
mov edx, eax
sub edx, 0xa3de544c
sub edx, 1
add edx, 0xa3de544c
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, 0xe4fc4e3a
mov ecx, 0xaa5bb534
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov ax, word [ebp - 0x26]
movzx eax, ax
imul ecx, eax, 0x28
mov eax, dword [ebp - 0x2c]
sub eax, 0xdcc5e07
add eax, ecx
add eax, 0xdcc5e07
mov dword [ebp - 0x24], eax
mov eax, dword [0x10090d5c]
mov ecx, dword [0x10090d58]
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, 0xe4fc4e3a
mov ecx, 0xd3030c7a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov dword [ebp - 0x8c], 0xa7b77d01
jmp 0x10011d92
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x54]
mov dword [eax], ecx
mov eax, dword [ebp - 0x54]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x1003af1a
call fcn.10030530
add esp, 8
mov edx, eax
mov eax, 0xa503afa
mov ecx, 0xb660681b
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov eax, dword [ebp - 0x50]
mov dword [eax], 0
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x8c], 0xcc7c3194
jmp 0x10011d92
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x54]
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 - 0x50]
mov ecx, dword [ebp - 0x20]
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 al
and al, 1
mov byte [ebp - 0x17], al
mov dword [ebp - 0x8c], 0x6e6cb99d
jmp 0x10011d92
mov eax, dword [0x10090d5c]
mov ecx, dword [0x10090d58]
mov edx, eax
sub edx, 0x9ca08883
sub edx, 1
add edx, 0x9ca08883
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, 0x87f27593
mov ecx, 0x8582c1b3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov cl, byte [ebp - 0x17]
and cl, 1
mov eax, dword [ebp - 0x4c]
mov byte [eax], cl
mov eax, dword [ebp - 0x74]
mov edx, dword [eax]
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub edx, 0x304814bc
add edx, eax
add edx, 0x304814bc
mov eax, dword [ebp - 0x64]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub ecx, 0x10980b55
add ecx, eax
add ecx, 0x10980b55
mov eax, dword [ebp - 0x54]
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.1002cd30
add esp, 0xc
mov eax, dword [ebp - 0x50]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov eax, dword [ebp - 0x74]
mov esi, dword [eax]
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
xor eax, eax
sub eax, edi
sub esi, eax
mov eax, dword [ebp - 0x50]
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 - 0x4c]
mov byte [eax], cl
mov ecx, dword [0x10090d5c]
mov eax, dword [0x10090d58]
mov edx, ecx
add edx, 0xb3c701be
sub edx, 1
sub edx, 0xb3c701be
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, 0x87f27593
mov ecx, 0x2aeb8d70
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov dword [ebp - 0x8c], 0xb660681b
jmp 0x10011d92
mov dword [ebp - 0x8c], 0x23eb09d0
jmp 0x10011d92
mov ecx, dword [0x10090d5c]
mov eax, dword [0x10090d58]
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, 0xac334a82
mov ecx, 0xdd034625
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov eax, dword [ebp - 0x58]
mov ax, word [eax]
sub ax, 0x579
add ax, 1
add ax, 0x579
mov word [ebp - 0x16], ax
mov ecx, dword [0x10090d5c]
mov eax, dword [0x10090d58]
mov edx, ecx
sub edx, 0x8e1876b5
sub edx, 1
add edx, 0x8e1876b5
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, 0xac334a82
mov ecx, 0x433d9236
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov dword [ebp - 0x8c], 0xb5aeef71
jmp 0x10011d92
mov ecx, dword [0x10090d5c]
mov eax, dword [0x10090d58]
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, 0xb3a07374
mov ecx, 0x7b76621
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov eax, dword [ebp - 0x58]
mov cx, word [ebp - 0x16]
mov word [eax], cx
mov eax, dword [0x10090d5c]
mov ecx, dword [0x10090d58]
mov edx, eax
add edx, 0xe3e04197
sub edx, 1
sub edx, 0xe3e04197
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, 0xb3a07374
mov ecx, 0xe40a06e1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov dword [ebp - 0x8c], 0x2a8a362e
jmp 0x10011d92
mov dword [ebp - 0x8c], 0x1634a765
jmp 0x10011d92
mov ecx, dword [0x10090d5c]
mov eax, dword [0x10090d58]
mov edx, ecx
sub edx, 0x21df4ca1
sub edx, 1
add edx, 0x21df4ca1
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, 0x21ee582c
mov ecx, 0xea6c60e3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x10090d5c]
mov ecx, dword [0x10090d58]
mov edx, eax
sub edx, 0xbacab5c
sub edx, 1
add edx, 0xbacab5c
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, 0x21ee582c
mov ecx, 0x3c25c547
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov dword [ebp - 0x8c], 0x34ee6a6b
jmp 0x10011d92
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x8c], 0xaa07b1f9
jmp 0x10011d92
mov eax, dword [ebp - 0x14]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x8c], 0xc07f0386
jmp 0x10011d92
mov eax, dword [0x10090d5c]
mov ecx, dword [0x10090d58]
mov edx, eax
add edx, 0xdbc971be
sub edx, 1
sub edx, 0xdbc971be
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, 0x4bd1db62
mov ecx, 0xb265fce0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov ecx, dword [0x10090d5c]
mov eax, dword [0x10090d58]
mov edx, ecx
sub edx, 0xbdb833a9
sub edx, 1
add edx, 0xbdb833a9
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, 0x4bd1db62
mov ecx, 0xd48ced3c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10011d92
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1002be30
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0x8c], 0x70117d00
jmp 0x10011d92
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x44]
mov dword [eax], ecx
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x8c], 0xdf1d8aee
jmp 0x10011d92
mov eax, dword [ebp - 0x3c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x8c], 0x469e01fc
jmp 0x10011d92
mov dword [ebp - 0x8c], 0xf288e30e
jmp 0x10011d92
mov dword [ebp - 0x8c], 0xcc61f798
jmp 0x10011d92
mov ax, word [ebp - 0x26]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x8c], 0xaa5bb534
jmp 0x10011d92
mov cl, byte [ebp - 0x17]
and cl, 1
mov eax, dword [ebp - 0x4c]
mov byte [eax], cl
mov eax, dword [ebp - 0x74]
mov edx, dword [eax]
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub edx, 0xa681e134
add edx, eax
add edx, 0xa681e134
mov eax, dword [ebp - 0x64]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
sub ecx, eax
mov eax, dword [ebp - 0x54]
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.1002cd30
add esp, 0xc
mov eax, dword [ebp - 0x50]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov eax, dword [ebp - 0x74]
mov esi, dword [eax]
mov eax, dword [ebp - 0x54]
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 - 0x50]
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 - 0x4c]
mov byte [eax], cl
mov dword [ebp - 0x8c], 0x8582c1b3
jmp 0x10011d92
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x8c], 0xdd034625
jmp 0x10011d92
mov eax, dword [ebp - 0x58]
mov cx, word [ebp - 0x16]
mov word [eax], cx
mov dword [ebp - 0x8c], 0x7b76621
jmp 0x10011d92
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x8c], 0xea6c60e3
jmp 0x10011d92
mov dword [ebp - 0x8c], 0xb265fce0
jmp 0x10010780