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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0xa0
mov eax, dword [ebp + 8]
mov dword [ebp - 0xa4], eax
mov eax, dword [0x1006b200]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov ecx, dword [0x1006c538]
mov eax, dword [0x1006c534]
mov edx, ecx
add edx, 0xc95832ab
sub edx, 1
sub edx, 0xc95832ab
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x9a], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x99], al
mov dword [ebp - 0xa0], 0x122bfa10
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0xa8], eax
sub eax, 0x8120d26a
je 0x10002111
jmp 0x10001283
mov eax, dword [ebp - 0xa8]
sub eax, 0x8472b4bf
je 0x100025ce
jmp 0x10001299
mov eax, dword [ebp - 0xa8]
sub eax, 0x8c09c88f
je 0x10002b76
jmp 0x100012af
mov eax, dword [ebp - 0xa8]
sub eax, 0x8e9f5dc8
je 0x100024d3
jmp 0x100012c5
mov eax, dword [ebp - 0xa8]
sub eax, 0x91c5b4ad
je 0x100022fc
jmp 0x100012db
mov eax, dword [ebp - 0xa8]
sub eax, 0x9395cb6a
je 0x10001b6a
jmp 0x100012f1
mov eax, dword [ebp - 0xa8]
sub eax, 0x95be6040
je 0x100021be
jmp 0x10001307
mov eax, dword [ebp - 0xa8]
sub eax, 0x97cf4888
je 0x10001a6a
jmp 0x1000131d
mov eax, dword [ebp - 0xa8]
sub eax, 0x985f9624
je 0x10002af4
jmp 0x10001333
mov eax, dword [ebp - 0xa8]
sub eax, 0x99895fa2
je 0x1000222c
jmp 0x10001349
mov eax, dword [ebp - 0xa8]
sub eax, 0x9e10d872
je 0x10002a81
jmp 0x1000135f
mov eax, dword [ebp - 0xa8]
sub eax, 0xa1872c3b
je 0x1000298e
jmp 0x10001375
mov eax, dword [ebp - 0xa8]
sub eax, 0xaad2ea34
je 0x10002c08
jmp 0x1000138b
mov eax, dword [ebp - 0xa8]
sub eax, 0xacabfd4f
je 0x10002012
jmp 0x100013a1
mov eax, dword [ebp - 0xa8]
sub eax, 0xae910ca8
je 0x10001b79
jmp 0x100013b7
mov eax, dword [ebp - 0xa8]
sub eax, 0xaf1d7df6
je 0x10002aa1
jmp 0x100013cd
mov eax, dword [ebp - 0xa8]
sub eax, 0xb2e336f5
je 0x10001f6e
jmp 0x100013e3
mov eax, dword [ebp - 0xa8]
sub eax, 0xb9a383aa
je 0x10002bad
jmp 0x100013f9
mov eax, dword [ebp - 0xa8]
sub eax, 0xc19fd075
je 0x1000209b
jmp 0x1000140f
mov eax, dword [ebp - 0xa8]
sub eax, 0xc3288e90
je 0x100028a4
jmp 0x10001425
mov eax, dword [ebp - 0xa8]
sub eax, 0xc699398d
je 0x10001a19
jmp 0x1000143b
mov eax, dword [ebp - 0xa8]
sub eax, 0xd22f86da
je 0x100028f5
jmp 0x10001451
mov eax, dword [ebp - 0xa8]
sub eax, 0xd82f0890
je 0x1000229c
jmp 0x10001467
mov eax, dword [ebp - 0xa8]
sub eax, 0xd8d6d8f5
je 0x1000271b
jmp 0x1000147d
mov eax, dword [ebp - 0xa8]
sub eax, 0xdc54f1b7
je 0x100027a0
jmp 0x10001493
mov eax, dword [ebp - 0xa8]
sub eax, 0xdc5bb134
je 0x10001df0
jmp 0x100014a9
mov eax, dword [ebp - 0xa8]
sub eax, 0xe0d4a296
je 0x10002a13
jmp 0x100014bf
mov eax, dword [ebp - 0xa8]
sub eax, 0xe728130f
je 0x100027b7
jmp 0x100014d5
mov eax, dword [ebp - 0xa8]
sub eax, 0xe786be9f
je 0x10001e07
jmp 0x100014eb
mov eax, dword [ebp - 0xa8]
sub eax, 0xe93f3787
je 0x100026c3
jmp 0x10001501
mov eax, dword [ebp - 0xa8]
sub eax, 0xe9623413
je 0x10001b1c
jmp 0x10001517
mov eax, dword [ebp - 0xa8]
sub eax, 0xedd703bd
je 0x10001b2b
jmp 0x1000152d
mov eax, dword [ebp - 0xa8]
sub eax, 0xf11a2913
je 0x10002638
jmp 0x10001543
mov eax, dword [ebp - 0xa8]
sub eax, 0xf178f899
je 0x10002b06
jmp 0x10001559
mov eax, dword [ebp - 0xa8]
sub eax, 0xf6050d19
je 0x10001e25
jmp 0x1000156f
mov eax, dword [ebp - 0xa8]
sub eax, 0xf87a214e
je 0x10002895
jmp 0x10001585
mov eax, dword [ebp - 0xa8]
sub eax, 0xffe52f17
je 0x100024b9
jmp 0x1000159b
mov eax, dword [ebp - 0xa8]
sub eax, 0x1f260bb
je 0x10002c3a
jmp 0x100015b1
mov eax, dword [ebp - 0xa8]
sub eax, 0x22d361e
je 0x1000218b
jmp 0x100015c7
mov eax, dword [ebp - 0xa8]
sub eax, 0x510171c
je 0x10002065
jmp 0x100015dd
mov eax, dword [ebp - 0xa8]
sub eax, 0x968ec21
je 0x1000247b
jmp 0x100015f3
mov eax, dword [ebp - 0xa8]
sub eax, 0xa43f09c
je 0x10002be7
jmp 0x10001609
mov eax, dword [ebp - 0xa8]
sub eax, 0xbd7d807
je 0x10001e34
jmp 0x1000161f
mov eax, dword [ebp - 0xa8]
sub eax, 0xc8a7f66
je 0x10001bdd
jmp 0x10001635
mov eax, dword [ebp - 0xa8]
sub eax, 0xfb33692
je 0x10002b9e
jmp 0x1000164b
mov eax, dword [ebp - 0xa8]
sub eax, 0x122bfa10
je 0x100018fa
jmp 0x10001661
mov eax, dword [ebp - 0xa8]
sub eax, 0x1258536d
je 0x100025e7
jmp 0x10001677
mov eax, dword [ebp - 0xa8]
sub eax, 0x186d9e34
je 0x1000216d
jmp 0x1000168d
mov eax, dword [ebp - 0xa8]
sub eax, 0x1e5452c3
je 0x10002b3f
jmp 0x100016a3
mov eax, dword [ebp - 0xa8]
sub eax, 0x23c939d8
je 0x100026d2
jmp 0x100016b9
mov eax, dword [ebp - 0xa8]
sub eax, 0x272eb816
je 0x10001cdf
jmp 0x100016cf
mov eax, dword [ebp - 0xa8]
sub eax, 0x28d905b2
je 0x10001a0a
jmp 0x100016e5
mov eax, dword [ebp - 0xa8]
sub eax, 0x2a3ba7d3
je 0x1000238f
jmp 0x100016fb
mov eax, dword [ebp - 0xa8]
sub eax, 0x2bb68fab
je 0x10001c8e
jmp 0x10001711
mov eax, dword [ebp - 0xa8]
sub eax, 0x3b7a4625
je 0x10001ea9
jmp 0x10001727
mov eax, dword [ebp - 0xa8]
sub eax, 0x3cc42091
je 0x10001dc3
jmp 0x1000173d
mov eax, dword [ebp - 0xa8]
sub eax, 0x4263d898
je 0x100022ab
jmp 0x10001753
mov eax, dword [ebp - 0xa8]
sub eax, 0x4555308f
je 0x10002549
jmp 0x10001769
mov eax, dword [ebp - 0xa8]
sub eax, 0x4a6b8474
je 0x10002791
jmp 0x1000177f
mov eax, dword [ebp - 0xa8]
sub eax, 0x4c8aed27
je 0x10002a92
jmp 0x10001795
mov eax, dword [ebp - 0xa8]
sub eax, 0x5216dd98
je 0x10002b2a
jmp 0x100017ab
mov eax, dword [ebp - 0xa8]
sub eax, 0x5f06ddcd
je 0x10001c5d
jmp 0x100017c1
mov eax, dword [ebp - 0xa8]
sub eax, 0x5ff33f8e
je 0x10001c7f
jmp 0x100017d7
mov eax, dword [ebp - 0xa8]
sub eax, 0x6217c556
je 0x10002074
jmp 0x100017ed
mov eax, dword [ebp - 0xa8]
sub eax, 0x6247c6fc
je 0x100025bf
mov al, byte [ebp - 0x9a]
mov cl, byte [ebp - 0x99]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x4c8aed27
mov ecx, 0x76d37497
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov dword [ebp - 0xa0], 0xc699398d
jmp 0x10002c44
mov eax, dword [0x1006c538]
mov ecx, dword [0x1006c534]
mov edx, eax
sub edx, 0xd462091d
sub edx, 1
add edx, 0xd462091d
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, 0xaf1d7df6
mov ecx, 0x97cf4888
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov ecx, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x98]
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0x94]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.1000d540
add esp, 0xc
mov ecx, dword [0x1006c538]
mov eax, dword [0x1006c534]
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, 0xaf1d7df6
mov ecx, 0xe9623413
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov dword [ebp - 0xa0], 0xedd703bd
jmp 0x10002c44
mov eax, dword [ebp - 0x98]
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 - 0x8c]
mov dword [eax], ecx
mov edx, dword [ebp - 0x8c]
mov eax, 0x9395cb6a
mov ecx, 0xae910ca8
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov dword [ebp - 0xa0], 0x62fea62b
jmp 0x10002c44
mov eax, dword [ebp - 0x8c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x94]
mov edx, dword [eax]
mov eax, dword [ebp - 0x90]
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 - 0x90]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x88]
mov dword [eax], ecx
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0xa0], 0xc8a7f66
jmp 0x10002c44
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x58]
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 - 0x84]
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 - 0x80]
mov dword [eax], ecx
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0xa0], 0x5f06ddcd
jmp 0x10002c44
mov edx, dword [ebp - 0x54]
mov esi, 0xffffffff
mov eax, 0x2bb68fab
mov ecx, 0x5ff33f8e
cmp edx, esi
cmove eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov dword [ebp - 0xa0], 0x62fea62b
jmp 0x10002c44
mov eax, dword [ebp - 0x80]
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 ecx, eax
mov eax, dword [ebp - 0x7c]
mov dword [eax], ecx
mov dword [ebp - 0xa0], 0x272eb816
jmp 0x10002c44
mov ecx, dword [0x1006c538]
mov eax, dword [0x1006c534]
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, 0x985f9624
mov ecx, 0x72d2adba
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov dword [ebp - 0xa0], 0x6c84a212
jmp 0x10002c44
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0xa0], 0xe786be9f
jmp 0x10002c44
mov eax, dword [ebp - 0x4c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa0], 0xf6050d19
jmp 0x10002c44
mov dword [ebp - 0xa0], 0x62fea62b
jmp 0x10002c44
mov eax, dword [ebp - 0x7c]
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 - 0x78]
mov dword [eax], ecx
mov eax, dword [ebp - 0x88]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x74]
mov dword [eax], ecx
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x74]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0x3c]
add eax, 0xe6454d63
add eax, ecx
sub eax, 0xe6454d63
mov dword [ebp - 0x48], eax
mov dword [ebp - 0xa0], 0x3b7a4625
jmp 0x10002c44
mov eax, dword [0x1006c538]
mov ecx, dword [0x1006c534]
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, 0xf178f899
mov ecx, 0x72764e4a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov dword [ebp - 0xa0], 0x66a92edc
jmp 0x10002c44
mov eax, dword [ebp - 0x6c]
mov ax, word [eax]
mov word [ebp - 0x3e], ax
mov eax, dword [0x1006c538]
mov ecx, dword [0x1006c534]
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, 0x7e8db2cb
mov ecx, 0x510171c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov dword [ebp - 0xa0], 0x6217c556
jmp 0x10002c44
mov ax, word [ebp - 0x3e]
movzx eax, ax
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
add eax, 4
add eax, 2
mov dword [ebp - 0x38], eax
mov dword [ebp - 0xa0], 0xc19fd075
jmp 0x10002c44
mov ecx, dword [0x1006c538]
mov eax, dword [0x1006c534]
mov edx, ecx
add edx, 0x9d55d65
sub edx, 1
sub edx, 0x9d55d65
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, 0x5216dd98
mov ecx, 0x8120d26a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov eax, dword [ebp - 0x38]
movzx ecx, word [eax]
mov eax, dword [ebp - 0x3c]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x31], al
mov eax, dword [0x1006c538]
mov ecx, dword [0x1006c534]
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, 0x5216dd98
mov ecx, 0x186d9e34
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov dl, byte [ebp - 0x31]
mov eax, 0xdc54f1b7
mov ecx, 0x22d361e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, 0x18
sub eax, ecx
mov ecx, dword [ebp - 0x70]
mov ecx, dword [ecx]
movzx ecx, word [ecx + 0x14]
sub eax, 0x22677cc8
add eax, ecx
add eax, 0x22677cc8
mov dword [ebp - 0x30], eax
mov dword [ebp - 0xa0], 0x95be6040
jmp 0x10002c44
mov ecx, dword [0x1006c538]
mov eax, dword [0x1006c534]
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, 0x1e5452c3
mov ecx, 0x99895fa2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov eax, dword [ebp - 0x6c]
movzx eax, word [eax]
imul edx, eax, 0x28
mov ecx, dword [ebp - 0x30]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, edx
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [ebp - 0x68]
mov dword [eax], ecx
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
mov eax, dword [0x1006c538]
mov ecx, dword [0x1006c534]
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, 0x1e5452c3
mov ecx, 0xd82f0890
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov dword [ebp - 0xa0], 0x4263d898
jmp 0x10002c44
mov eax, dword [0x1006c538]
mov ecx, dword [0x1006c534]
mov edx, eax
sub edx, 0x8fc2799
sub edx, 1
add edx, 0x8fc2799
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, 0x8c09c88f
mov ecx, 0x91c5b4ad
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov ecx, dword [ebp - 0x2c]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100193b0
call fcn.1000f8b0
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x25], al
mov eax, dword [0x1006c538]
mov ecx, dword [0x1006c534]
mov edx, eax
add edx, 0xb757edc8
sub edx, 1
sub edx, 0xb757edc8
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, 0x8c09c88f
mov ecx, 0x6fda3585
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov eax, dword [ebp - 0x64]
mov dword [eax], 0
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x88]
mov edx, dword [eax]
mov eax, dword [ebp - 0x68]
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 - 0x64]
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 - 0x60]
mov byte [eax], cl
mov eax, dword [ebp - 0x88]
mov edx, dword [eax]
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov ecx, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
sub edx, eax
mov eax, dword [ebp - 0x78]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, esi
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [ebp - 0x68]
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.1000d6a0
add esp, 0xc
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x68]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0xc]
sub eax, 0xedb459c7
add eax, ecx
add eax, 0xedb459c7
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa0], 0x968ec21
jmp 0x10002c44
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
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 - 0x17], al
mov dword [ebp - 0xa0], 0xffe52f17
jmp 0x10002c44
mov cl, byte [ebp - 0x17]
and cl, 1
mov eax, dword [ebp - 0x60]
mov byte [eax], cl
mov dword [ebp - 0xa0], 0x8e9f5dc8
jmp 0x10002c44
mov ecx, dword [0x1006c538]
mov eax, dword [0x1006c534]
mov edx, ecx
sub edx, 0x8a21ec08
sub edx, 1
add edx, 0x8a21ec08
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, 0xfb33692
mov ecx, 0x4555308f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov ecx, dword [0x1006c538]
mov eax, dword [0x1006c534]
mov edx, ecx
add edx, 0xfd9f830a
sub edx, 1
sub edx, 0xfd9f830a
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, 0xfb33692
mov ecx, 0x6247c6fc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov eax, dword [ebp - 0x6c]
mov ax, word [eax]
mov word [ebp - 0x16], ax
mov dword [ebp - 0xa0], 0x1258536d
jmp 0x10002c44
mov eax, dword [0x1006c538]
mov ecx, dword [0x1006c534]
mov edx, eax
add edx, 0x17c90488
sub edx, 1
sub edx, 0x17c90488
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, 0xb9a383aa
mov ecx, 0xf11a2913
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov cx, word [ebp - 0x16]
xor eax, eax
sub ax, cx
xor ecx, ecx
sub cx, 1
add ax, cx
xor ecx, ecx
sub cx, ax
mov eax, dword [ebp - 0x6c]
mov word [eax], cx
mov ecx, dword [0x1006c538]
mov eax, dword [0x1006c534]
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, 0xb9a383aa
mov ecx, 0xe93f3787
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov dword [ebp - 0xa0], 0x23c939d8
jmp 0x10002c44
mov eax, dword [0x1006c538]
mov ecx, dword [0x1006c534]
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, 0x736c226b
mov ecx, 0xd8d6d8f5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov ecx, dword [0x1006c538]
mov eax, dword [0x1006c534]
mov edx, ecx
add edx, 0xf24d232
sub edx, 1
sub edx, 0xf24d232
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, 0x736c226b
mov ecx, 0x4a6b8474
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov dword [ebp - 0xa0], 0x721bf9b6
jmp 0x10002c44
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0xa0], 0xe728130f
jmp 0x10002c44
mov eax, dword [0x1006c538]
mov ecx, dword [0x1006c534]
mov edx, eax
add edx, 0xf6ed301e
sub edx, 1
sub edx, 0xf6ed301e
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, 0xa43f09c
mov ecx, 0x7608db57
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov dword [ebp - 0xa0], 0xc3288e90
jmp 0x10002c44
mov eax, dword [0x1006c538]
mov ecx, dword [0x1006c534]
mov edx, eax
sub edx, 0x4bb28b73
sub edx, 1
add edx, 0x4bb28b73
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, 0xaad2ea34
mov ecx, 0xd22f86da
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov eax, dword [ebp - 0x10]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x1006c538]
mov eax, dword [0x1006c534]
mov edx, ecx
sub edx, 0xb5c33d17
sub edx, 1
add edx, 0xb5c33d17
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, 0xaad2ea34
mov ecx, 0xa1872c3b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov dword [ebp - 0xa0], 0x62fea62b
jmp 0x10002c44
mov ecx, dword [0x1006c538]
mov eax, dword [0x1006c534]
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, 0x1f260bb
mov ecx, 0x9e10d872
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x10002c44
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.1000c940
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov dword [ebp - 0xa0], 0x76d37497
jmp 0x10002c44
mov ecx, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x98]
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0x94]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.1000d540
add esp, 0xc
mov dword [ebp - 0xa0], 0x97cf4888
jmp 0x10002c44
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0xa0], 0x72d2adba
jmp 0x10002c44
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0xa0], 0x72764e4a
jmp 0x10002c44
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0xa0], 0x8120d26a
jmp 0x10002c44
mov eax, dword [ebp - 0x6c]
movzx eax, word [eax]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x30]
sub ecx, 0xc6f60a8d
add ecx, eax
add ecx, 0xc6f60a8d
mov eax, dword [ebp - 0x68]
mov dword [eax], ecx
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0xa0], 0x99895fa2
jmp 0x10002c44
mov ecx, dword [ebp - 0x2c]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100193b0
call fcn.1000f8b0
add esp, 8
mov dword [ebp - 0xa0], 0x91c5b4ad
jmp 0x10002c44
mov dword [ebp - 0xa0], 0x4555308f
jmp 0x10002c44
mov ax, word [ebp - 0x16]
mov cx, word [ebp - 0x16]
add cx, 0x8286
add cx, 1
sub cx, 0x8286
mov eax, dword [ebp - 0x6c]
mov word [eax], cx
mov dword [ebp - 0xa0], 0xf11a2913
jmp 0x10002c44
mov eax, dword [ebp - 0x14]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0xa0], 0x7608db57
jmp 0x10002c44
mov eax, dword [ebp - 0x10]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa0], 0xd22f86da
jmp 0x10002c44
mov dword [ebp - 0xa0], 0xe0d4a296
jmp 0x10001267