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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xa8
mov eax, dword [ebp + 8]
mov dword [ebp - 0xb0], eax
mov eax, dword [0x1005ec80]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x1006017c]
mov eax, dword [0x10060178]
mov edx, ecx
add edx, 0x5a5e8b5e
sub edx, 1
sub edx, 0x5a5e8b5e
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0xa6], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0xa5], al
mov dword [ebp - 0xac], 0x7ada9b17
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0xb4], eax
sub eax, 0x84e3e152
je 0x1000a3a1
jmp 0x10009154
mov eax, dword [ebp - 0xb4]
sub eax, 0x886fb04e
je 0x1000a891
jmp 0x1000916a
mov eax, dword [ebp - 0xb4]
sub eax, 0x8a8f18cc
je 0x1000999b
jmp 0x10009180
mov eax, dword [ebp - 0xb4]
sub eax, 0x92ac3644
je 0x1000a3f8
jmp 0x10009196
mov eax, dword [ebp - 0xb4]
sub eax, 0x932d7b18
je 0x10009ec0
jmp 0x100091ac
mov eax, dword [ebp - 0xb4]
sub eax, 0x961f0d9e
je 0x1000a688
jmp 0x100091c2
mov eax, dword [ebp - 0xb4]
sub eax, 0x9723db38
je 0x1000a2a7
jmp 0x100091d8
mov eax, dword [ebp - 0xb4]
sub eax, 0x9826582d
je 0x10009943
jmp 0x100091ee
mov eax, dword [ebp - 0xb4]
sub eax, 0x9a96990b
je 0x1000a697
jmp 0x10009204
mov eax, dword [ebp - 0xb4]
sub eax, 0x9d7fe781
je 0x1000a7ae
jmp 0x1000921a
mov eax, dword [ebp - 0xb4]
sub eax, 0xa8eeb9c7
je 0x1000a22e
jmp 0x10009230
mov eax, dword [ebp - 0xb4]
sub eax, 0xae5cbc99
je 0x1000a6ba
jmp 0x10009246
mov eax, dword [ebp - 0xb4]
sub eax, 0xaede7196
je 0x1000a90c
jmp 0x1000925c
mov eax, dword [ebp - 0xb4]
sub eax, 0xaf03305f
je 0x1000a943
jmp 0x10009272
mov eax, dword [ebp - 0xb4]
sub eax, 0xaf1dc5a2
je 0x10009c99
jmp 0x10009288
mov eax, dword [ebp - 0xb4]
sub eax, 0xaf7f5bf3
je 0x1000982f
jmp 0x1000929e
mov eax, dword [ebp - 0xb4]
sub eax, 0xb26ef6f7
je 0x10009c22
jmp 0x100092b4
mov eax, dword [ebp - 0xb4]
sub eax, 0xb7668109
je 0x10009ff3
jmp 0x100092ca
mov eax, dword [ebp - 0xb4]
sub eax, 0xbb09776d
je 0x1000a87c
jmp 0x100092e0
mov eax, dword [ebp - 0xb4]
sub eax, 0xc023ee46
je 0x1000a86a
jmp 0x100092f6
mov eax, dword [ebp - 0xb4]
sub eax, 0xc51ed1d2
je 0x10009f93
jmp 0x1000930c
mov eax, dword [ebp - 0xb4]
sub eax, 0xc9d9158c
je 0x1000a0aa
jmp 0x10009322
mov eax, dword [ebp - 0xb4]
sub eax, 0xd2a23b37
je 0x10009b15
jmp 0x10009338
mov eax, dword [ebp - 0xb4]
sub eax, 0xd3c50636
je 0x1000a8a6
jmp 0x1000934e
mov eax, dword [ebp - 0xb4]
sub eax, 0xd49f95bc
je 0x10009a7f
jmp 0x10009364
mov eax, dword [ebp - 0xb4]
sub eax, 0xd6164d14
je 0x1000a5b0
jmp 0x1000937a
mov eax, dword [ebp - 0xb4]
sub eax, 0xdb3e66cc
je 0x1000a934
jmp 0x10009390
mov eax, dword [ebp - 0xb4]
sub eax, 0xdbd88eb3
je 0x1000a824
jmp 0x100093a6
mov eax, dword [ebp - 0xb4]
sub eax, 0xde7347f4
je 0x1000a855
jmp 0x100093bc
mov eax, dword [ebp - 0xb4]
sub eax, 0xde7ab707
je 0x1000a08c
jmp 0x100093d2
mov eax, dword [ebp - 0xb4]
sub eax, 0xdf48f91a
je 0x10009952
jmp 0x100093e8
mov eax, dword [ebp - 0xb4]
sub eax, 0xe1905080
je 0x10009e3a
jmp 0x100093fe
mov eax, dword [ebp - 0xb4]
sub eax, 0xee2aba33
je 0x10009eb1
jmp 0x10009414
mov eax, dword [ebp - 0xb4]
sub eax, 0xf2295066
je 0x1000a32c
jmp 0x1000942a
mov eax, dword [ebp - 0xb4]
sub eax, 0xf62c54ad
je 0x1000a2b6
jmp 0x10009440
mov eax, dword [ebp - 0xb4]
sub eax, 0xf8bc34df
je 0x10009893
jmp 0x10009456
mov eax, dword [ebp - 0xb4]
sub eax, 0xfa6dc2fa
je 0x1000a1c0
jmp 0x1000946c
mov eax, dword [ebp - 0xb4]
sub eax, 0xfea30cbc
je 0x10009cea
jmp 0x10009482
mov eax, dword [ebp - 0xb4]
sub eax, 0x5472616
je 0x100097dd
jmp 0x10009498
mov eax, dword [ebp - 0xb4]
sub eax, 0x9a7d5d7
je 0x1000a8bb
jmp 0x100094ae
mov eax, dword [ebp - 0xb4]
sub eax, 0x10941db6
je 0x10009c6d
jmp 0x100094c4
mov eax, dword [ebp - 0xb4]
sub eax, 0x11c340f9
je 0x1000a815
jmp 0x100094da
mov eax, dword [ebp - 0xb4]
sub eax, 0x160d167f
je 0x1000a7f4
jmp 0x100094f0
mov eax, dword [ebp - 0xb4]
sub eax, 0x1669dfea
je 0x1000a3bf
jmp 0x10009506
mov eax, dword [ebp - 0xb4]
sub eax, 0x17cab3ec
je 0x1000a6d3
jmp 0x1000951c
mov eax, dword [ebp - 0xb4]
sub eax, 0x18c142b7
je 0x10009b83
jmp 0x10009532
mov eax, dword [ebp - 0xb4]
sub eax, 0x1b822972
je 0x10009c08
jmp 0x10009548
mov eax, dword [ebp - 0xb4]
sub eax, 0x1cf85a67
je 0x10009ee8
jmp 0x1000955e
mov eax, dword [ebp - 0xb4]
sub eax, 0x1f888920
je 0x1000a955
jmp 0x10009574
mov eax, dword [ebp - 0xb4]
sub eax, 0x243ea903
je 0x1000a47c
jmp 0x1000958a
mov eax, dword [ebp - 0xb4]
sub eax, 0x2fdb1db9
je 0x10009d82
jmp 0x100095a0
mov eax, dword [ebp - 0xb4]
sub eax, 0x333aae95
je 0x1000a55f
jmp 0x100095b6
mov eax, dword [ebp - 0xb4]
sub eax, 0x334a5b98
je 0x1000a724
jmp 0x100095cc
mov eax, dword [ebp - 0xb4]
sub eax, 0x3449f325
je 0x1000a5bf
jmp 0x100095e2
mov eax, dword [ebp - 0xb4]
sub eax, 0x3754508b
je 0x1000a50e
jmp 0x100095f8
mov eax, dword [ebp - 0xb4]
sub eax, 0x3ad8c4a6
je 0x10009df1
jmp 0x1000960e
mov eax, dword [ebp - 0xb4]
sub eax, 0x3f1553d9
je 0x1000983e
jmp 0x10009624
mov eax, dword [ebp - 0xb4]
sub eax, 0x40d6e4a9
je 0x10009a70
jmp 0x1000963a
mov eax, dword [ebp - 0xb4]
sub eax, 0x41c61b8c
je 0x1000a803
jmp 0x10009650
mov eax, dword [ebp - 0xb4]
sub eax, 0x45455360
je 0x10009d46
jmp 0x10009666
mov eax, dword [ebp - 0xb4]
sub eax, 0x49ed5660
je 0x1000a120
jmp 0x1000967c
mov eax, dword [ebp - 0xb4]
sub eax, 0x4e6ebf33
je 0x1000a635
jmp 0x10009692
mov eax, dword [ebp - 0xb4]
sub eax, 0x5941c6e0
je 0x1000a7bd
jmp 0x100096a8
mov eax, dword [ebp - 0xb4]
sub eax, 0x5e636ef9
je 0x10009d55
jmp 0x100096be
mov eax, dword [ebp - 0xb4]
sub eax, 0x69a248ba
je 0x1000a1b1
push eax
mov eax, esp
mov dword [ebp - 0xa4], eax
mov eax, dword [0x1006017c]
mov ecx, dword [0x10060178]
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, 0x11c340f9
mov ecx, 0xaf7f5bf3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov dword [ebp - 0xac], 0x3f1553d9
jmp 0x1000a973
push eax
mov eax, esp
mov dword [ebp - 0xa0], eax
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x9c], eax
push eax
mov eax, esp
mov dword [ebp - 0x98], eax
push eax
mov eax, esp
mov dword [ebp - 0x94], eax
sub esp, 0x104
mov eax, esp
mov dword [ebp - 0x90], eax
push eax
mov eax, esp
mov dword [ebp - 0x8c], eax
push eax
mov eax, esp
mov dword [ebp - 0x88], eax
mov dword [ebp - 0xac], 0xf8bc34df
jmp 0x1000a973
mov ecx, dword [ebp - 0xb0]
push eax
mov eax, esp
mov dword [ebp - 0x84], eax
push eax
mov eax, esp
mov dword [ebp - 0x80], eax
push eax
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
push eax
mov eax, esp
mov dword [ebp - 0x70], eax
push eax
mov eax, esp
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0xa4]
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0xa0]
mov dword [eax], ecx
mov eax, dword [ebp - 0x9c]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.10025680
add esp, 0xc
mov eax, dword [ebp - 0xa4]
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 - 0x98]
mov dword [eax], ecx
mov edx, dword [ebp - 0x98]
mov eax, 0x9826582d
mov ecx, 0xdf48f91a
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov dword [ebp - 0xac], 0x41c61b8c
jmp 0x1000a973
mov eax, dword [ebp - 0x98]
mov ecx, dword [eax]
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax]
mov eax, dword [ebp - 0x9c]
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 - 0x9c]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0xac], 0x8a8f18cc
jmp 0x1000a973
mov eax, dword [0x1006017c]
mov ecx, dword [0x10060178]
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, 0xdbd88eb3
mov ecx, 0x6a126e8a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov dword [ebp - 0xac], 0xd49f95bc
jmp 0x1000a973
mov eax, dword [ebp - 0x98]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x64]
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 - 0x90]
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 - 0x8c]
mov dword [eax], ecx
mov edx, dword [ebp - 0x8c]
mov esi, 0xffffffff
mov eax, 0x1b822972
mov ecx, 0xd2a23b37
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov ecx, dword [0x1006017c]
mov eax, dword [0x10060178]
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, 0x7df40371
mov ecx, 0x18c142b7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov ecx, dword [0x1006017c]
mov eax, dword [0x10060178]
mov edx, ecx
add edx, 0x570e56f9
sub edx, 1
sub edx, 0x570e56f9
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, 0x7df40371
mov ecx, 0x766fc334
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0xac], 0xb26ef6f7
jmp 0x1000a973
mov eax, dword [ebp - 0x60]
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 - 0x5c], eax
mov dword [ebp - 0xac], 0x10941db6
jmp 0x1000a973
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x5c]
mov dword [eax], ecx
mov edx, dword [ebp - 0x88]
mov eax, 0xaf1dc5a2
mov ecx, 0x2fdb1db9
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov eax, dword [0x1006017c]
mov ecx, dword [0x10060178]
mov edx, eax
add edx, 0x3d6c8f37
sub edx, 1
sub edx, 0x3d6c8f37
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, 0xde7347f4
mov ecx, 0xfea30cbc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
mov dword [ebp - 0x58], eax
mov eax, dword [0x1006017c]
mov ecx, dword [0x10060178]
mov edx, eax
sub edx, 0x9d4e7dea
sub edx, 1
add edx, 0x9d4e7dea
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, 0xde7347f4
mov ecx, 0x45455360
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov dword [ebp - 0xac], 0x5e636ef9
jmp 0x1000a973
mov eax, dword [ebp - 0x58]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xac], 0x6eedf930
jmp 0x1000a973
mov eax, dword [ebp - 0x88]
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 - 0x84]
mov dword [eax], ecx
mov eax, dword [ebp - 0x94]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x80]
mov dword [eax], ecx
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0xac], 0x3ad8c4a6
jmp 0x1000a973
mov eax, dword [0x1006017c]
mov ecx, dword [0x10060178]
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, 0xc023ee46
mov ecx, 0xe1905080
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov eax, dword [ebp - 0x50]
mov eax, dword [eax + 0x3c]
mov dword [ebp - 0x4c], eax
mov ecx, dword [0x1006017c]
mov eax, dword [0x10060178]
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, 0xc023ee46
mov ecx, 0xee2aba33
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov dword [ebp - 0xac], 0x932d7b18
jmp 0x1000a973
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x4c]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x7c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x78]
mov word [eax], 0
mov dword [ebp - 0xac], 0x1cf85a67
jmp 0x1000a973
mov eax, dword [0x1006017c]
mov ecx, dword [0x10060178]
mov edx, eax
sub edx, 0xe0fd869
sub edx, 1
add edx, 0xe0fd869
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, 0xbb09776d
mov ecx, 0x6bbaeaf4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov dword [ebp - 0xac], 0x6a437780
jmp 0x1000a973
mov eax, dword [ebp - 0x44]
movzx ecx, word [eax + 6]
mov eax, dword [ebp - 0x48]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x3d], al
mov ecx, dword [0x1006017c]
mov eax, dword [0x10060178]
mov edx, ecx
sub edx, 0xe14cec76
sub edx, 1
add edx, 0xe14cec76
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, 0x886fb04e
mov ecx, 0x73404159
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov dl, byte [ebp - 0x3d]
mov eax, 0x17cab3ec
mov ecx, 0xc9d9158c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov ecx, dword [0x1006017c]
mov eax, dword [0x10060178]
mov edx, ecx
add edx, 0xc1e7e160
sub edx, 1
sub edx, 0xc1e7e160
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, 0xd3c50636
mov ecx, 0x49ed5660
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, 0x18
sub eax, ecx
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
movzx eax, word [eax + 0x14]
mov dword [ebp - 0x38], eax
mov ecx, dword [0x1006017c]
mov eax, dword [0x10060178]
mov edx, ecx
sub edx, 0xf42ce7a9
sub edx, 1
add edx, 0xf42ce7a9
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, 0xd3c50636
mov ecx, 0x69a248ba
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov ecx, dword [0x1006017c]
mov eax, dword [0x10060178]
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, 0x9a7d5d7
mov ecx, 0xa8eeb9c7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x38]
add ecx, 0x2504e372
add ecx, eax
sub ecx, 0x2504e372
mov eax, dword [ebp - 0x78]
movzx eax, word [eax]
imul edx, eax, 0x28
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x74]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov dword [ebp - 0x34], eax
mov eax, dword [0x1006017c]
mov ecx, dword [0x10060178]
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, 0x9a7d5d7
mov ecx, 0x9723db38
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov dword [ebp - 0xac], 0xf62c54ad
jmp 0x1000a973
mov ecx, dword [0x1006017c]
mov eax, dword [0x10060178]
mov edx, ecx
sub edx, 0x5ba29375
sub edx, 1
add edx, 0x5ba29375
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, 0xaede7196
mov ecx, 0xf2295066
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov ecx, dword [ebp - 0x34]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10032930
call fcn.10028fe0
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x2d], al
mov eax, dword [0x1006017c]
mov ecx, dword [0x10060178]
mov edx, eax
add edx, 0x3ac509da
sub edx, 1
sub edx, 0x3ac509da
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, 0xaede7196
mov ecx, 0x84e3e152
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov dl, byte [ebp - 0x2d]
mov eax, 0x1669dfea
mov ecx, 0x3754508b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov eax, dword [ebp - 0x70]
mov dword [eax], 0
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
add eax, 0xc
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xac], 0x92ac3644
jmp 0x1000a973
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov edx, dword [ebp - 0x28]
add edx, 0xdef52d53
add edx, eax
sub edx, 0xdef52d53
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x2c]
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 - 0x6c]
mov byte [eax], cl
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x74]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0xc]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
add eax, 0xc
mov dword [ebp - 0x18], eax
mov dword [ebp - 0xac], 0x243ea903
jmp 0x1000a973
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x1c]
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 - 0x74]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x20]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.100257e0
add esp, 0xc
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov eax, dword [ebp - 0x94]
mov esi, dword [eax]
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
xor eax, eax
sub eax, edi
sub esi, eax
mov eax, dword [ebp - 0x70]
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 - 0x6c]
mov byte [eax], cl
mov dword [ebp - 0xac], 0x3754508b
jmp 0x1000a973
mov eax, dword [0x1006017c]
mov ecx, dword [0x10060178]
mov edx, eax
sub edx, 0xd6d1d685
sub edx, 1
add edx, 0xd6d1d685
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, 0xdb3e66cc
mov ecx, 0x333aae95
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov eax, dword [0x1006017c]
mov ecx, dword [0x10060178]
mov edx, eax
sub edx, 0x3373d4a9
sub edx, 1
add edx, 0x3373d4a9
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, 0xdb3e66cc
mov ecx, 0xd6164d14
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov dword [ebp - 0xac], 0x3449f325
jmp 0x1000a973
mov ecx, dword [0x1006017c]
mov eax, dword [0x10060178]
mov edx, ecx
add edx, 0xcaa74a0a
sub edx, 1
sub edx, 0xcaa74a0a
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, 0xaf03305f
mov ecx, 0x4e6ebf33
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov eax, dword [ebp - 0x78]
mov ax, word [eax]
mov word [ebp - 0x14], ax
mov eax, dword [0x1006017c]
mov ecx, dword [0x10060178]
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, 0xaf03305f
mov ecx, 0x961f0d9e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov dword [ebp - 0xac], 0x9a96990b
jmp 0x1000a973
mov ax, word [ebp - 0x14]
sub ax, 0x7619
add ax, 1
add ax, 0x7619
mov word [ebp - 0x12], ax
mov dword [ebp - 0xac], 0xae5cbc99
jmp 0x1000a973
mov eax, dword [ebp - 0x78]
mov cx, word [ebp - 0x12]
mov word [eax], cx
mov dword [ebp - 0xac], 0x1cf85a67
jmp 0x1000a973
mov eax, dword [0x1006017c]
mov ecx, dword [0x10060178]
mov edx, eax
sub edx, 0x55a39dab
sub edx, 1
add edx, 0x55a39dab
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, 0x1f888920
mov ecx, 0x334a5b98
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x1006017c]
mov eax, dword [0x10060178]
mov edx, ecx
sub edx, 0x9468f923
sub edx, 1
add edx, 0x9468f923
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, 0x1f888920
mov ecx, 0x9d7fe781
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x1000a973
mov dword [ebp - 0xac], 0x5941c6e0
jmp 0x1000a973
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xac], 0x160d167f
jmp 0x1000a973
mov dword [ebp - 0xac], 0x41c61b8c
jmp 0x1000a973
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100248e0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0xac], 0x5472616
jmp 0x1000a973
mov eax, dword [ebp - 0x68]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x94]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xac], 0x6a126e8a
jmp 0x1000a973
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xac], 0xfea30cbc
jmp 0x1000a973
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0xac], 0xe1905080
jmp 0x1000a973
mov eax, dword [ebp - 0x78]
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0xac], 0x6bbaeaf4
jmp 0x1000a973
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0xac], 0xb7668109
jmp 0x1000a973
mov eax, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0xac], 0x49ed5660
jmp 0x1000a973
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x38]
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 - 0x78]
movzx eax, word [eax]
imul eax, eax, 0x28
sub ecx, 0x588849c2
add ecx, eax
add ecx, 0x588849c2
mov eax, dword [ebp - 0x74]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0xac], 0xa8eeb9c7
jmp 0x1000a973
mov ecx, dword [ebp - 0x34]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10032930
call fcn.10028fe0
add esp, 8
mov dword [ebp - 0xac], 0xf2295066
jmp 0x1000a973
mov dword [ebp - 0xac], 0x333aae95
jmp 0x1000a973
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0xac], 0x4e6ebf33
jmp 0x1000a973
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xac], 0x334a5b98
jmp 0x10009138