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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x98
mov eax, dword [ebp + 8]
mov dword [ebp - 0xa0], eax
mov eax, dword [0x10068800]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x9c], 0xf25b73e5
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0xa4], eax
sub eax, 0x81dfdb66
je 0x1000271f
jmp 0x10001315
mov eax, dword [ebp - 0xa4]
sub eax, 0x84d863a0
je 0x100023cc
jmp 0x1000132b
mov eax, dword [ebp - 0xa4]
sub eax, 0x8608025c
je 0x10002306
jmp 0x10001341
mov eax, dword [ebp - 0xa4]
sub eax, 0x882bb9f0
je 0x100026fe
jmp 0x10001357
mov eax, dword [ebp - 0xa4]
sub eax, 0x8e9fab4d
je 0x10002523
jmp 0x1000136d
mov eax, dword [ebp - 0xa4]
sub eax, 0x8eb318ab
je 0x10001953
jmp 0x10001383
mov eax, dword [ebp - 0xa4]
sub eax, 0x92c495af
je 0x10001fd4
jmp 0x10001399
mov eax, dword [ebp - 0xa4]
sub eax, 0x963180ce
je 0x10002606
jmp 0x100013af
mov eax, dword [ebp - 0xa4]
sub eax, 0x9cab7c55
je 0x100020b1
jmp 0x100013c5
mov eax, dword [ebp - 0xa4]
sub eax, 0xae710c96
je 0x1000256e
jmp 0x100013db
mov eax, dword [ebp - 0xa4]
sub eax, 0xb1de9372
je 0x1000215c
jmp 0x100013f1
mov eax, dword [ebp - 0xa4]
sub eax, 0xb65f7342
je 0x10001cc2
jmp 0x10001407
mov eax, dword [ebp - 0xa4]
sub eax, 0xb73de0a5
je 0x10002731
jmp 0x1000141d
mov eax, dword [ebp - 0xa4]
sub eax, 0xc14b05f8
je 0x10002290
jmp 0x10001433
mov eax, dword [ebp - 0xa4]
sub eax, 0xcc045e21
je 0x10001c04
jmp 0x10001449
mov eax, dword [ebp - 0xa4]
sub eax, 0xcdfe4fd2
je 0x10001f1b
jmp 0x1000145f
mov eax, dword [ebp - 0xa4]
sub eax, 0xd2f056ac
je 0x10001e5b
jmp 0x10001475
mov eax, dword [ebp - 0xa4]
sub eax, 0xd5a4df65
je 0x100020f8
jmp 0x1000148b
mov eax, dword [ebp - 0xa4]
sub eax, 0xdb614ea4
je 0x1000249c
jmp 0x100014a1
mov eax, dword [ebp - 0xa4]
sub eax, 0xddb5463a
je 0x10001a40
jmp 0x100014b7
mov eax, dword [ebp - 0xa4]
sub eax, 0xe03f4214
je 0x100025b5
jmp 0x100014cd
mov eax, dword [ebp - 0xa4]
sub eax, 0xe4fb0237
je 0x10002710
jmp 0x100014e3
mov eax, dword [ebp - 0xa4]
sub eax, 0xe83bd904
je 0x10001ebb
jmp 0x100014f9
mov eax, dword [ebp - 0xa4]
sub eax, 0xea94240e
je 0x10001a7f
jmp 0x1000150f
mov eax, dword [ebp - 0xa4]
sub eax, 0xec110498
je 0x10001bf5
jmp 0x10001525
mov eax, dword [ebp - 0xa4]
sub eax, 0xf256034d
je 0x1000207e
jmp 0x1000153b
mov eax, dword [ebp - 0xa4]
sub eax, 0xf25b73e5
je 0x1000186e
jmp 0x10001551
mov eax, dword [ebp - 0xa4]
sub eax, 0xf46a837c
je 0x100026d1
jmp 0x10001567
mov eax, dword [ebp - 0xa4]
sub eax, 0x506ad97
je 0x1000208d
jmp 0x1000157d
mov eax, dword [ebp - 0xa4]
sub eax, 0xcc35f7b
je 0x1000234f
jmp 0x10001593
mov eax, dword [ebp - 0xa4]
sub eax, 0xde172ec
je 0x1000241f
jmp 0x100015a9
mov eax, dword [ebp - 0xa4]
sub eax, 0x16b5bab5
je 0x10001b2e
jmp 0x100015bf
mov eax, dword [ebp - 0xa4]
sub eax, 0x19db86f9
je 0x10001c79
jmp 0x100015d5
mov eax, dword [ebp - 0xa4]
sub eax, 0x1b8c8f2d
je 0x10001d38
jmp 0x100015eb
mov eax, dword [ebp - 0xa4]
sub eax, 0x2302ac09
je 0x1000274c
jmp 0x10001601
mov eax, dword [ebp - 0xa4]
sub eax, 0x24b2570c
je 0x10001f0c
jmp 0x10001617
mov eax, dword [ebp - 0xa4]
sub eax, 0x2e8aa4c0
je 0x10002025
jmp 0x1000162d
mov eax, dword [ebp - 0xa4]
sub eax, 0x3012622e
je 0x10001b7f
jmp 0x10001643
mov eax, dword [ebp - 0xa4]
sub eax, 0x308e9905
je 0x10002532
jmp 0x10001659
mov eax, dword [ebp - 0xa4]
sub eax, 0x3611ad68
je 0x100026ef
jmp 0x1000166f
mov eax, dword [ebp - 0xa4]
sub eax, 0x3785d224
je 0x10001f32
jmp 0x10001685
mov eax, dword [ebp - 0xa4]
sub eax, 0x38cb948d
je 0x100026c2
jmp 0x1000169b
mov eax, dword [ebp - 0xa4]
sub eax, 0x391a57cd
je 0x10001a13
jmp 0x100016b1
mov eax, dword [ebp - 0xa4]
sub eax, 0x3a098e39
je 0x100021fb
jmp 0x100016c7
mov eax, dword [ebp - 0xa4]
sub eax, 0x3a735831
je 0x1000235e
jmp 0x100016dd
mov eax, dword [ebp - 0xa4]
sub eax, 0x3d54703b
je 0x10002597
jmp 0x100016f3
mov eax, dword [ebp - 0xa4]
sub eax, 0x3f71dd4c
je 0x1000254b
jmp 0x10001709
mov eax, dword [ebp - 0xa4]
sub eax, 0x495e1da1
je 0x10001d56
jmp 0x1000171f
mov eax, dword [ebp - 0xa4]
sub eax, 0x49ed0e0c
je 0x10001f79
jmp 0x10001735
mov eax, dword [ebp - 0xa4]
sub eax, 0x4f24c9d7
je 0x10001c54
jmp 0x1000174b
mov eax, dword [ebp - 0xa4]
sub eax, 0x54de1eb7
je 0x1000242e
jmp 0x10001761
mov eax, dword [ebp - 0xa4]
sub eax, 0x57cfa48d
je 0x10001d70
jmp 0x10001777
mov eax, dword [ebp - 0xa4]
sub eax, 0x57da102f
je 0x10002669
jmp 0x1000178d
mov eax, dword [ebp - 0xa4]
sub eax, 0x594a2c69
je 0x1000213e
jmp 0x100017a3
mov eax, dword [ebp - 0xa4]
sub eax, 0x5c4f52d2
je 0x100018dd
jmp 0x100017b9
mov eax, dword [ebp - 0xa4]
sub eax, 0x5cfedf29
je 0x10001abb
jmp 0x100017cf
mov eax, dword [ebp - 0xa4]
sub eax, 0x650236c5
je 0x10001a31
jmp 0x100017e5
mov eax, dword [ebp - 0xa4]
sub eax, 0x67ea2532
je 0x10001fbc
jmp 0x100017fb
mov eax, dword [ebp - 0xa4]
sub eax, 0x69704196
je 0x10002657
jmp 0x10001811
mov eax, dword [ebp - 0xa4]
sub eax, 0x700c3f59
je 0x10002193
jmp 0x10001827
mov eax, dword [ebp - 0xa4]
sub eax, 0x712d25ab
je 0x100026b3
jmp 0x1000183d
mov eax, dword [ebp - 0xa4]
sub eax, 0x7561cf73
je 0x10001e6a
jmp 0x10001853
mov eax, dword [ebp - 0xa4]
sub eax, 0x77a5b71d
je 0x10001dde
jmp 0x10001869
jmp 0x10002756
mov eax, dword [ebp - 0xa0]
push eax
sub esp, 0x100
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
push eax
mov ecx, esp
mov dword [ebp - 0x64], ecx
mov dword [ebp - 0x8c], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x9c], 0x5c4f52d2
jmp 0x10002756
mov ecx, dword [0x10069b38]
mov eax, dword [0x10069b34]
mov edx, ecx
sub edx, 0x18b94e52
sub edx, 1
add edx, 0x18b94e52
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, 0x57da102f
mov ecx, 0x8eb318ab
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
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.1000ba00
add esp, 0xc
mov eax, dword [ebp - 0x8c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x94], eax
cmp dword [ebp - 0x94], 0
setne al
and al, 1
mov byte [ebp - 0x5d], al
mov ecx, dword [0x10069b38]
mov eax, dword [0x10069b34]
mov edx, ecx
sub edx, 0x60199401
sub edx, 1
add edx, 0x60199401
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, 0x57da102f
mov ecx, 0x391a57cd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov dl, byte [ebp - 0x5d]
mov eax, 0x650236c5
mov ecx, 0xddb5463a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov dword [ebp - 0x9c], 0xe03f4214
jmp 0x10002756
mov ecx, dword [ebp - 0x94]
mov edx, dword [ebp - 0x90]
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 eax, dword [ebp - 0x1c]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x9c], 0xea94240e
jmp 0x10002756
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x94]
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 - 0x9c], 0x5cfedf29
jmp 0x10002756
mov eax, dword [ebp - 0x88]
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 - 0x84]
mov dword [eax], ecx
mov edx, dword [ebp - 0x84]
mov esi, 0xffffffff
mov eax, 0xcc045e21
mov ecx, 0x16b5bab5
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov eax, dword [0x10069b38]
mov ecx, dword [0x10069b34]
mov edx, eax
sub edx, 0xbe8307f7
sub edx, 1
add edx, 0xbe8307f7
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, 0x712d25ab
mov ecx, 0x3012622e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov ecx, dword [0x10069b38]
mov eax, dword [0x10069b34]
mov edx, ecx
add edx, 0x5006d207
sub edx, 1
sub edx, 0x5006d207
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, 0x712d25ab
mov ecx, 0xec110498
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov dword [ebp - 0x9c], 0xe03f4214
jmp 0x10002756
mov eax, dword [ebp - 0x84]
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 - 0x58], eax
mov dword [ebp - 0x9c], 0x4f24c9d7
jmp 0x10002756
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x58]
mov dword [eax], ecx
mov eax, dword [ebp - 0x80]
cmp dword [eax], 0
setne al
and al, 1
mov byte [ebp - 0x51], al
mov dword [ebp - 0x9c], 0x19db86f9
jmp 0x10002756
mov eax, dword [0x10069b38]
mov ecx, dword [0x10069b34]
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, 0x38cb948d
mov ecx, 0xb65f7342
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov ecx, dword [0x10069b38]
mov eax, dword [0x10069b34]
mov edx, ecx
add edx, 0xde3c98f1
sub edx, 1
sub edx, 0xde3c98f1
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, 0x38cb948d
mov ecx, 0x1b8c8f2d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov dl, byte [ebp - 0x51]
mov eax, 0x495e1da1
mov ecx, 0xcdfe4fd2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x9c], 0x57cfa48d
jmp 0x10002756
mov ecx, dword [0x10069b38]
mov eax, dword [0x10069b34]
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, 0xf46a837c
mov ecx, 0x77a5b71d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov eax, dword [ebp - 0x50]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x10069b38]
mov eax, dword [0x10069b34]
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, 0xf46a837c
mov ecx, 0xd2f056ac
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov dword [ebp - 0x9c], 0x7561cf73
jmp 0x10002756
mov eax, dword [0x10069b38]
mov ecx, dword [0x10069b34]
mov edx, eax
sub edx, 0x62b8e2c3
sub edx, 1
add edx, 0x62b8e2c3
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, 0x3611ad68
mov ecx, 0xe83bd904
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov eax, dword [0x10069b38]
mov ecx, dword [0x10069b34]
mov edx, eax
sub edx, 0xb5567304
sub edx, 1
add edx, 0xb5567304
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, 0x3611ad68
mov ecx, 0x24b2570c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov dword [ebp - 0x9c], 0xe03f4214
jmp 0x10002756
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x9c], 0x3785d224
jmp 0x10002756
mov eax, dword [ebp - 0x4c]
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 - 0x7c]
mov dword [eax], ecx
mov dword [ebp - 0x9c], 0x49ed0e0c
jmp 0x10002756
mov ecx, dword [ebp - 0x98]
mov eax, dword [ebp - 0x78]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x98]
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c]
add ecx, 0x2985ae80
add ecx, eax
sub ecx, 0x2985ae80
mov eax, dword [ebp - 0x74]
mov dword [eax], ecx
mov eax, dword [ebp - 0x70]
mov word [eax], 0
mov dword [ebp - 0x9c], 0x67ea2532
jmp 0x10002756
mov eax, dword [ebp - 0x70]
movzx eax, word [eax]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x9c], 0x92c495af
jmp 0x10002756
mov eax, dword [0x10069b38]
mov ecx, dword [0x10069b34]
mov edx, eax
add edx, 0xec49ce15
sub edx, 1
sub edx, 0xec49ce15
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, 0x882bb9f0
mov ecx, 0x2e8aa4c0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov dword [ebp - 0x44], eax
mov eax, dword [0x10069b38]
mov ecx, dword [0x10069b34]
mov edx, eax
sub edx, 0x3e383157
sub edx, 1
add edx, 0x3e383157
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, 0x882bb9f0
mov ecx, 0xf256034d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov dword [ebp - 0x9c], 0x506ad97
jmp 0x10002756
mov eax, dword [ebp - 0x44]
movzx esi, word [eax + 6]
mov edx, dword [ebp - 0x48]
mov eax, 0x3f71dd4c
mov ecx, 0x9cab7c55
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov eax, dword [ebp - 0x74]
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 ecx, dword [ebp - 0x74]
mov ecx, dword [ecx]
movzx ecx, word [ecx + 0x14]
add eax, 0xe16ad64b
add eax, ecx
sub eax, 0xe16ad64b
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x70]
movzx eax, word [eax]
imul eax, eax, 0x28
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x9c], 0xd5a4df65
jmp 0x10002756
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x6c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100173b0
call fcn.1000dd70
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x35], al
mov dword [ebp - 0x9c], 0x594a2c69
jmp 0x10002756
mov dl, byte [ebp - 0x35]
mov eax, 0xb1de9372
mov ecx, 0xc14b05f8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov eax, dword [ebp - 0x68]
mov dword [eax], 0
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x9c], 0x700c3f59
jmp 0x10002756
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
xor eax, eax
sub eax, ecx
sub edx, eax
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x34]
sub esp, 0x10
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x40
mov dword [esp + 0xc], eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x64]
mov byte [eax], cl
mov eax, dword [ebp - 0x98]
mov ecx, dword [ebp - 0x6c]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0xc]
add eax, 0xf9cbc93e
add eax, ecx
sub eax, 0xf9cbc93e
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x9c], 0x3a098e39
jmp 0x10002756
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add ecx, 0xa4bbe702
add ecx, eax
sub ecx, 0xa4bbe702
mov eax, dword [ebp - 0x6c]
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.1000bb60
add esp, 0xc
mov eax, dword [ebp - 0x68]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x98]
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
xor eax, eax
sub eax, edi
sub esi, eax
mov eax, dword [ebp - 0x68]
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 - 0x64]
mov byte [eax], cl
mov dword [ebp - 0x9c], 0xc14b05f8
jmp 0x10002756
mov ecx, dword [0x10069b38]
mov eax, dword [0x10069b34]
mov edx, ecx
add edx, 0xfa88ed62
sub edx, 1
sub edx, 0xfa88ed62
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, 0xe4fb0237
mov ecx, 0x8608025c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov eax, dword [0x10069b38]
mov ecx, dword [0x10069b34]
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, 0xe4fb0237
mov ecx, 0xcc35f7b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov dword [ebp - 0x9c], 0x3a735831
jmp 0x10002756
mov ecx, dword [0x10069b38]
mov eax, dword [0x10069b34]
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, 0x81dfdb66
mov ecx, 0x84d863a0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov eax, dword [ebp - 0x70]
mov ax, word [eax]
mov word [ebp - 0x24], ax
mov eax, dword [0x10069b38]
mov ecx, dword [0x10069b34]
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, 0x81dfdb66
mov ecx, 0xde172ec
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov dword [ebp - 0x9c], 0x54de1eb7
jmp 0x10002756
mov ecx, dword [0x10069b38]
mov eax, dword [0x10069b34]
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, 0xb73de0a5
mov ecx, 0xdb614ea4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov ax, word [ebp - 0x24]
xor ecx, ecx
sub cx, 1
sub ax, cx
mov word [ebp - 0x22], ax
mov ecx, dword [0x10069b38]
mov eax, dword [0x10069b34]
mov edx, ecx
sub edx, 0x50219c3b
sub edx, 1
add edx, 0x50219c3b
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, 0xb73de0a5
mov ecx, 0x8e9fab4d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov dword [ebp - 0x9c], 0x308e9905
jmp 0x10002756
mov eax, dword [ebp - 0x70]
mov cx, word [ebp - 0x22]
mov word [eax], cx
mov dword [ebp - 0x9c], 0x67ea2532
jmp 0x10002756
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x9c], 0xae710c96
jmp 0x10002756
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x9c], 0x3d54703b
jmp 0x10002756
mov eax, dword [ebp - 0x20]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x9c], 0xe03f4214
jmp 0x10002756
mov eax, dword [0x10069b38]
mov ecx, dword [0x10069b34]
mov edx, eax
sub edx, 0x156d9a61
sub edx, 1
add edx, 0x156d9a61
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, 0x2302ac09
mov ecx, 0x963180ce
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov eax, dword [0x10069b38]
mov ecx, dword [0x10069b34]
mov edx, eax
sub edx, 0x1f6bc38b
sub edx, 1
add edx, 0x1f6bc38b
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, 0x2302ac09
mov ecx, 0x69704196
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10002756
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1000ae00
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
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.1000ba00
add esp, 0xc
mov eax, dword [ebp - 0x8c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x9c], 0x8eb318ab
jmp 0x10002756
mov dword [ebp - 0x9c], 0x3012622e
jmp 0x10002756
mov dword [ebp - 0x9c], 0xb65f7342
jmp 0x10002756
mov eax, dword [ebp - 0x50]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x9c], 0x77a5b71d
jmp 0x10002756
mov dword [ebp - 0x9c], 0xe83bd904
jmp 0x10002756
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x9c], 0x2e8aa4c0
jmp 0x10002756
mov dword [ebp - 0x9c], 0x8608025c
jmp 0x10002756
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x9c], 0x84d863a0
jmp 0x10002756
mov ax, word [ebp - 0x24]
mov ax, word [ebp - 0x24]
mov ax, word [ebp - 0x24]
mov dword [ebp - 0x9c], 0xdb614ea4
jmp 0x10002756
mov dword [ebp - 0x9c], 0x963180ce
jmp 0x100012f9