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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x1a4
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1a8], eax
mov eax, dword [0x1006d200]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x1a4], 0x6a91222
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x1ac], eax
sub eax, 0x853d72ef
je 0x10001fb1
jmp 0x10001334
mov eax, dword [ebp - 0x1ac]
sub eax, 0x8673ac89
je 0x10001eef
jmp 0x1000134a
mov eax, dword [ebp - 0x1ac]
sub eax, 0x86dd560f
je 0x10001ed2
jmp 0x10001360
mov eax, dword [ebp - 0x1ac]
sub eax, 0x888d3d06
je 0x10001caf
jmp 0x10001376
mov eax, dword [ebp - 0x1ac]
sub eax, 0x8bad076e
je 0x10001f60
jmp 0x1000138c
mov eax, dword [ebp - 0x1ac]
sub eax, 0x8c70ff3f
je 0x1000268f
jmp 0x100013a2
mov eax, dword [ebp - 0x1ac]
sub eax, 0x8ec19195
je 0x100025e4
jmp 0x100013b8
mov eax, dword [ebp - 0x1ac]
sub eax, 0x8efe81ee
je 0x10002238
jmp 0x100013ce
mov eax, dword [ebp - 0x1ac]
sub eax, 0x9050f154
je 0x10002076
jmp 0x100013e4
mov eax, dword [ebp - 0x1ac]
sub eax, 0x9076cd78
je 0x10002743
jmp 0x100013fa
mov eax, dword [ebp - 0x1ac]
sub eax, 0x95d917c3
je 0x10001bc7
jmp 0x10001410
mov eax, dword [ebp - 0x1ac]
sub eax, 0x9dfdb76e
je 0x100020e4
jmp 0x10001426
mov eax, dword [ebp - 0x1ac]
sub eax, 0x9eb9ccb0
je 0x100025c3
jmp 0x1000143c
mov eax, dword [ebp - 0x1ac]
sub eax, 0xa45a3305
je 0x100022f7
jmp 0x10001452
mov eax, dword [ebp - 0x1ac]
sub eax, 0xa63f8e18
je 0x10001cbe
jmp 0x10001468
mov eax, dword [ebp - 0x1ac]
sub eax, 0xa7fe45f4
je 0x100023e2
jmp 0x1000147e
mov eax, dword [ebp - 0x1ac]
sub eax, 0xae8ee4e5
je 0x100024c1
jmp 0x10001494
mov eax, dword [ebp - 0x1ac]
sub eax, 0xafc2dc0f
je 0x10001d7a
jmp 0x100014aa
mov eax, dword [ebp - 0x1ac]
sub eax, 0xb0df956c
je 0x10001980
jmp 0x100014c0
mov eax, dword [ebp - 0x1ac]
sub eax, 0xb17bd8da
je 0x10001f2e
jmp 0x100014d6
mov eax, dword [ebp - 0x1ac]
sub eax, 0xb47bf5dc
je 0x10001d11
jmp 0x100014ec
mov eax, dword [ebp - 0x1ac]
sub eax, 0xc5f6ebf2
je 0x10002597
jmp 0x10001502
mov eax, dword [ebp - 0x1ac]
sub eax, 0xcd4f82c2
je 0x10002705
jmp 0x10001518
mov eax, dword [ebp - 0x1ac]
sub eax, 0xd39cc0f9
je 0x100022bf
jmp 0x1000152e
mov eax, dword [ebp - 0x1ac]
sub eax, 0xd5ae2416
je 0x10001d5d
jmp 0x10001544
mov eax, dword [ebp - 0x1ac]
sub eax, 0xf8e724cb
je 0x10001920
jmp 0x1000155a
mov eax, dword [ebp - 0x1ac]
sub eax, 0xfa5ed70c
je 0x10002619
jmp 0x10001570
mov eax, dword [ebp - 0x1ac]
sub eax, 0xfad4d2da
je 0x10002286
jmp 0x10001586
mov eax, dword [ebp - 0x1ac]
sub eax, 0x13b31be
je 0x1000217b
jmp 0x1000159c
mov eax, dword [ebp - 0x1ac]
sub eax, 0x2431eca
je 0x10001e5a
jmp 0x100015b2
mov eax, dword [ebp - 0x1ac]
sub eax, 0x33faa69
je 0x10002734
jmp 0x100015c8
mov eax, dword [ebp - 0x1ac]
sub eax, 0x401577b
je 0x1000276d
jmp 0x100015de
mov eax, dword [ebp - 0x1ac]
sub eax, 0x4f6e4c7
je 0x100019fa
jmp 0x100015f4
mov eax, dword [ebp - 0x1ac]
sub eax, 0x4fd9c51
je 0x10001b51
jmp 0x1000160a
mov eax, dword [ebp - 0x1ac]
sub eax, 0x6a91222
je 0x1000184b
jmp 0x10001620
mov eax, dword [ebp - 0x1ac]
sub eax, 0xaac0a7b
je 0x10001a09
jmp 0x10001636
mov eax, dword [ebp - 0x1ac]
sub eax, 0x1ebf9b8f
je 0x1000244b
jmp 0x1000164c
mov eax, dword [ebp - 0x1ac]
sub eax, 0x21b2e736
je 0x100025a6
jmp 0x10001662
mov eax, dword [ebp - 0x1ac]
sub eax, 0x24bf6ac9
je 0x10001d9b
jmp 0x10001678
mov eax, dword [ebp - 0x1ac]
sub eax, 0x24d96b8d
je 0x10002752
jmp 0x1000168e
mov eax, dword [ebp - 0x1ac]
sub eax, 0x27cbcf00
je 0x10002725
jmp 0x100016a4
mov eax, dword [ebp - 0x1ac]
sub eax, 0x2bfc4859
je 0x100018e9
jmp 0x100016ba
mov eax, dword [ebp - 0x1ac]
sub eax, 0x2d6869bd
je 0x10001dec
jmp 0x100016d0
mov eax, dword [ebp - 0x1ac]
sub eax, 0x2deef85c
je 0x10001d3c
jmp 0x100016e6
mov eax, dword [ebp - 0x1ac]
sub eax, 0x3d8ec535
je 0x1000192f
jmp 0x100016fc
mov eax, dword [ebp - 0x1ac]
sub eax, 0x3e2714cc
je 0x10002716
jmp 0x10001712
mov eax, dword [ebp - 0x1ac]
sub eax, 0x49132720
je 0x10002105
jmp 0x10001728
mov eax, dword [ebp - 0x1ac]
sub eax, 0x4923b19a
je 0x1000201e
jmp 0x1000173e
mov eax, dword [ebp - 0x1ac]
sub eax, 0x4a0100bd
je 0x1000279d
jmp 0x10001754
mov eax, dword [ebp - 0x1ac]
sub eax, 0x544670a4
je 0x100027ac
jmp 0x1000176a
mov eax, dword [ebp - 0x1ac]
sub eax, 0x55c8784a
je 0x10001c5e
jmp 0x10001780
mov eax, dword [ebp - 0x1ac]
sub eax, 0x5c9b59af
je 0x10002247
jmp 0x10001796
mov eax, dword [ebp - 0x1ac]
sub eax, 0x5ced542a
je 0x10001be8
jmp 0x100017ac
mov eax, dword [ebp - 0x1ac]
sub eax, 0x5d587912
je 0x1000202d
jmp 0x100017c2
mov eax, dword [ebp - 0x1ac]
sub eax, 0x60bf068e
je 0x10002578
jmp 0x100017d8
mov eax, dword [ebp - 0x1ac]
sub eax, 0x64fcb3d7
je 0x1000277c
jmp 0x100017ee
mov eax, dword [ebp - 0x1ac]
sub eax, 0x685a95ef
je 0x10001adb
jmp 0x10001804
mov eax, dword [ebp - 0x1ac]
sub eax, 0x68a825be
je 0x10002537
jmp 0x1000181a
mov eax, dword [ebp - 0x1ac]
sub eax, 0x77412faa
je 0x10002546
jmp 0x10001830
mov eax, dword [ebp - 0x1ac]
sub eax, 0x7fc3135c
je 0x10001e69
jmp 0x10001846
jmp 0x100027b6
mov eax, dword [ebp - 0x1a8]
push eax
mov ecx, esp
mov dword [ebp - 0x190], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x18c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x188], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x184], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x180], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x17c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x178], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x174], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x170], ecx
mov dword [ebp - 0x194], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x198], eax
lea eax, [ebp - 0x11c]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.1000ba30
add esp, 0xc
mov dword [ebp - 0x1a4], 0x2bfc4859
jmp 0x100027b6
mov eax, dword [ebp - 0x194]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x19c], eax
mov eax, 0xf8e724cb
mov ecx, 0x3d8ec535
cmp dword [ebp - 0x19c], 0
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov dword [ebp - 0x1a4], 0xfa5ed70c
jmp 0x100027b6
mov eax, dword [0x1006e540]
mov ecx, dword [0x1006e53c]
mov edx, eax
add edx, 0x6efd5b1a
sub edx, 1
sub edx, 0x6efd5b1a
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, 0x3e2714cc
mov ecx, 0xb0df956c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x16c], eax
mov ecx, dword [0x1006e540]
mov eax, dword [0x1006e53c]
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, 0x3e2714cc
mov ecx, 0x4f6e4c7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov dword [ebp - 0x1a4], 0xaac0a7b
jmp 0x100027b6
mov edx, dword [ebp - 0x198]
mov ecx, dword [ebp - 0x16c]
lea eax, [ebp - 0x11c]
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 - 0x11c]
mov dword [ebp - 0x1a0], eax
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0x19c]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [ebp - 0x110]
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 - 0x190]
mov dword [eax], ecx
mov eax, dword [ebp - 0x190]
mov ecx, 0xffffffff
cmp dword [eax], ecx
sete al
and al, 1
mov byte [ebp - 0x165], al
mov dword [ebp - 0x1a4], 0x685a95ef
jmp 0x100027b6
mov ecx, dword [0x1006e540]
mov eax, dword [0x1006e53c]
mov edx, ecx
sub edx, 0x21a7d465
sub edx, 1
add edx, 0x21a7d465
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, 0x27cbcf00
mov ecx, 0x4fd9c51
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov ecx, dword [0x1006e540]
mov eax, dword [0x1006e53c]
mov edx, ecx
sub edx, 0x9615dd4c
sub edx, 1
add edx, 0x9615dd4c
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, 0x27cbcf00
mov ecx, 0x95d917c3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov dl, byte [ebp - 0x165]
mov eax, 0xa63f8e18
mov ecx, 0x5ced542a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov ecx, dword [0x1006e540]
mov eax, dword [0x1006e53c]
mov edx, ecx
add edx, 0x3c8dcef5
sub edx, 1
sub edx, 0x3c8dcef5
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, 0x33faa69
mov ecx, 0x55c8784a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov eax, dword [0x1006e540]
mov ecx, dword [0x1006e53c]
mov edx, eax
sub edx, 0x6a0db12f
sub edx, 1
add edx, 0x6a0db12f
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, 0x33faa69
mov ecx, 0x888d3d06
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov dword [ebp - 0x1a4], 0xfa5ed70c
jmp 0x100027b6
mov eax, dword [ebp - 0x190]
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 - 0x164], eax
mov dword [ebp - 0x1a4], 0xb47bf5dc
jmp 0x100027b6
mov eax, dword [ebp - 0x18c]
mov ecx, dword [ebp - 0x164]
mov dword [eax], ecx
mov eax, dword [ebp - 0x18c]
mov eax, dword [eax]
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x1a4], 0x2deef85c
jmp 0x100027b6
mov edx, dword [ebp - 0x160]
mov eax, 0xd5ae2416
mov ecx, 0x7fc3135c
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov eax, dword [ebp - 0x190]
mov eax, dword [eax]
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x1a4], 0xafc2dc0f
jmp 0x100027b6
mov eax, dword [ebp - 0x15c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a4], 0x24bf6ac9
jmp 0x100027b6
mov eax, dword [0x1006e540]
mov ecx, dword [0x1006e53c]
mov edx, eax
sub edx, 0x8de6366c
sub edx, 1
add edx, 0x8de6366c
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, 0x9076cd78
mov ecx, 0x2d6869bd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov ecx, dword [0x1006e540]
mov eax, dword [0x1006e53c]
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, 0x9076cd78
mov ecx, 0x2431eca
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov dword [ebp - 0x1a4], 0xfa5ed70c
jmp 0x100027b6
mov eax, dword [ebp - 0x18c]
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 - 0x188]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x1a0]
mov eax, dword [ebp - 0x184]
mov dword [eax], ecx
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x1a4], 0x86dd560f
jmp 0x100027b6
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x1a4], 0x8673ac89
jmp 0x100027b6
mov eax, dword [ebp - 0x154]
mov eax, dword [eax + 0x3c]
mov ecx, dword [ebp - 0x158]
add ecx, 0xaba76654
add ecx, eax
sub ecx, 0xaba76654
mov eax, dword [ebp - 0x180]
mov dword [eax], ecx
mov eax, dword [ebp - 0x17c]
mov word [eax], 0
mov dword [ebp - 0x1a4], 0xb17bd8da
jmp 0x100027b6
mov eax, dword [ebp - 0x17c]
movzx eax, word [eax]
mov dword [ebp - 0x150], eax
mov eax, dword [ebp - 0x180]
mov eax, dword [eax]
add eax, 4
add eax, 2
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x1a4], 0x8bad076e
jmp 0x100027b6
mov eax, dword [0x1006e540]
mov ecx, dword [0x1006e53c]
mov edx, eax
add edx, 0xad68260e
sub edx, 1
sub edx, 0xad68260e
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, 0x24d96b8d
mov ecx, 0x853d72ef
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov eax, dword [ebp - 0x14c]
movzx ecx, word [eax]
mov eax, dword [ebp - 0x150]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x145], al
mov eax, dword [0x1006e540]
mov ecx, dword [0x1006e53c]
mov edx, eax
add edx, 0xe2a8ef86
sub edx, 1
sub edx, 0xe2a8ef86
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, 0x24d96b8d
mov ecx, 0x4923b19a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov dword [ebp - 0x1a4], 0x5d587912
jmp 0x100027b6
mov eax, dword [0x1006e540]
mov ecx, dword [0x1006e53c]
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, 0x401577b
mov ecx, 0x9050f154
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov ecx, dword [0x1006e540]
mov eax, dword [0x1006e53c]
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, 0x401577b
mov ecx, 0x9dfdb76e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov dl, byte [ebp - 0x145]
mov eax, 0x21b2e736
mov ecx, 0x49132720
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov ecx, dword [0x1006e540]
mov eax, dword [0x1006e53c]
mov edx, ecx
sub edx, 0x13ceceac
sub edx, 1
add edx, 0x13ceceac
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, 0x64fcb3d7
mov ecx, 0x13b31be
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov eax, dword [ebp - 0x180]
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 - 0x180]
mov ecx, dword [ecx]
movzx ecx, word [ecx + 0x14]
sub eax, 0xad7044f2
add eax, ecx
add eax, 0xad7044f2
mov dword [ebp - 0x144], eax
mov eax, dword [ebp - 0x17c]
movzx eax, word [eax]
imul eax, eax, 0x28
mov dword [ebp - 0x140], eax
mov ecx, dword [0x1006e540]
mov eax, dword [0x1006e53c]
mov edx, ecx
add edx, 0x4d855ae4
sub edx, 1
sub edx, 0x4d855ae4
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, 0x64fcb3d7
mov ecx, 0x8efe81ee
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov dword [ebp - 0x1a4], 0x5c9b59af
jmp 0x100027b6
mov ecx, dword [ebp - 0x144]
mov eax, dword [ebp - 0x140]
sub ecx, 0xcc2eb75b
add ecx, eax
add ecx, 0xcc2eb75b
mov eax, dword [ebp - 0x178]
mov dword [eax], ecx
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x1a4], 0xfad4d2da
jmp 0x100027b6
mov ecx, dword [ebp - 0x13c]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100173b0
call fcn.1000dda0
add esp, 8
mov edx, eax
mov eax, 0xd39cc0f9
mov ecx, 0x1ebf9b8f
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov eax, dword [ebp - 0x174]
mov dword [eax], 0
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x1a4], 0xa45a3305
jmp 0x100027b6
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 0x134]
add edx, 0xa87aa499
add edx, eax
sub edx, 0xa87aa499
mov eax, dword [ebp - 0x174]
mov ecx, dword [ebp - 0x138]
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 - 0x170]
mov byte [eax], cl
mov edx, dword [ebp - 0x1a0]
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub edx, 0x2dfefe6c
add edx, eax
add edx, 0x2dfefe6c
mov eax, dword [ebp - 0x188]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
sub ecx, eax
mov eax, dword [ebp - 0x178]
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.1000bb90
add esp, 0xc
mov eax, dword [ebp - 0x174]
mov eax, dword [eax]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x1a4], 0xa7fe45f4
jmp 0x100027b6
mov esi, dword [ebp - 0x128]
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add esi, 0x608cf0c8
add esi, eax
sub esi, 0x608cf0c8
mov eax, dword [ebp - 0x174]
mov ecx, dword [ebp - 0x130]
mov edx, dword [ebp - 0x12c]
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 - 0x170]
mov byte [eax], cl
mov dword [ebp - 0x1a4], 0x1ebf9b8f
jmp 0x100027b6
mov ecx, dword [0x1006e540]
mov eax, dword [0x1006e53c]
mov edx, ecx
add edx, 0x5fb225a9
sub edx, 1
sub edx, 0x5fb225a9
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, 0x4a0100bd
mov ecx, 0xae8ee4e5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov ecx, dword [0x1006e540]
mov eax, dword [0x1006e53c]
mov edx, ecx
add edx, 0x8c3029cd
sub edx, 1
sub edx, 0x8c3029cd
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, 0x4a0100bd
mov ecx, 0x68a825be
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov dword [ebp - 0x1a4], 0x77412faa
jmp 0x100027b6
mov eax, dword [ebp - 0x17c]
mov ax, word [eax]
xor ecx, ecx
sub cx, ax
xor eax, eax
sub ax, 1
add cx, ax
xor eax, eax
sub ax, cx
mov word [ebp - 0x122], ax
mov dword [ebp - 0x1a4], 0x60bf068e
jmp 0x100027b6
mov eax, dword [ebp - 0x17c]
mov cx, word [ebp - 0x122]
mov word [eax], cx
mov dword [ebp - 0x1a4], 0xc5f6ebf2
jmp 0x100027b6
mov dword [ebp - 0x1a4], 0xb17bd8da
jmp 0x100027b6
mov eax, dword [ebp - 0x190]
mov eax, dword [eax]
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x1a4], 0x9eb9ccb0
jmp 0x100027b6
mov eax, dword [ebp - 0x120]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a4], 0x8ec19195
jmp 0x100027b6
mov eax, dword [ebp - 0x18c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x198]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a4], 0xfa5ed70c
jmp 0x100027b6
mov ecx, dword [0x1006e540]
mov eax, dword [0x1006e53c]
mov edx, ecx
add edx, 0x9e190efb
sub edx, 1
sub edx, 0x9e190efb
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, 0x544670a4
mov ecx, 0x8c70ff3f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov ecx, dword [0x1006e540]
mov eax, dword [0x1006e53c]
mov edx, ecx
sub edx, 0x29d55af2
sub edx, 1
add edx, 0x29d55af2
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, 0x544670a4
mov ecx, 0xcd4f82c2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100027b6
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.1000ae30
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov dword [ebp - 0x1a4], 0xb0df956c
jmp 0x100027b6
mov dword [ebp - 0x1a4], 0x4fd9c51
jmp 0x100027b6
mov dword [ebp - 0x1a4], 0x55c8784a
jmp 0x100027b6
mov dword [ebp - 0x1a4], 0x2d6869bd
jmp 0x100027b6
mov eax, dword [ebp - 0x14c]
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x1a4], 0x853d72ef
jmp 0x100027b6
mov dword [ebp - 0x1a4], 0x9050f154
jmp 0x100027b6
mov eax, dword [ebp - 0x180]
mov eax, dword [ebp - 0x180]
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x1a4], 0x13b31be
jmp 0x100027b6
mov dword [ebp - 0x1a4], 0xae8ee4e5
jmp 0x100027b6
mov dword [ebp - 0x1a4], 0x8c70ff3f
jmp 0x10001318