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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0xa8
mov eax, dword [ebp + 8]
mov dword [ebp - 0xac], eax
mov eax, dword [0x10069e04]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov ecx, dword [0x1006b0a8]
mov eax, dword [0x1006b0a4]
mov edx, ecx
add edx, 0x9aadec5a
sub edx, 1
sub edx, 0x9aadec5a
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0xa2], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0xa1], al
mov dword [ebp - 0xa8], 0x1c1814d8
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xb0], eax
sub eax, 0x80d9cfd3
je 0x10002f48
jmp 0x100015f3
mov eax, dword [ebp - 0xb0]
sub eax, 0x810f4c85
je 0x10002974
jmp 0x10001609
mov eax, dword [ebp - 0xb0]
sub eax, 0x8324cb2b
je 0x10003387
jmp 0x1000161f
mov eax, dword [ebp - 0xb0]
sub eax, 0x843cd94c
je 0x10003eb9
jmp 0x10001635
mov eax, dword [ebp - 0xb0]
sub eax, 0x844350eb
je 0x10002f39
jmp 0x1000164b
mov eax, dword [ebp - 0xb0]
sub eax, 0x87c4e368
je 0x100024da
jmp 0x10001661
mov eax, dword [ebp - 0xb0]
sub eax, 0x8cda00c1
je 0x1000222c
jmp 0x10001677
mov eax, dword [ebp - 0xb0]
sub eax, 0x90517528
je 0x10003c3e
jmp 0x1000168d
mov eax, dword [ebp - 0xb0]
sub eax, 0x939f7d03
je 0x10003eec
jmp 0x100016a3
mov eax, dword [ebp - 0xb0]
sub eax, 0x94004453
je 0x10002673
jmp 0x100016b9
mov eax, dword [ebp - 0xb0]
sub eax, 0x9541ba8e
je 0x10003fc0
jmp 0x100016cf
mov eax, dword [ebp - 0xb0]
sub eax, 0x9631982c
je 0x1000276c
jmp 0x100016e5
mov eax, dword [ebp - 0xb0]
sub eax, 0x97232a8b
je 0x10003f9f
jmp 0x100016fb
mov eax, dword [ebp - 0xb0]
sub eax, 0x9777fe0a
je 0x10003fae
jmp 0x10001711
mov eax, dword [ebp - 0xb0]
sub eax, 0x994b400e
je 0x1000358b
jmp 0x10001727
mov eax, dword [ebp - 0xb0]
sub eax, 0xa3011e23
je 0x10002d7d
jmp 0x1000173d
mov eax, dword [ebp - 0xb0]
sub eax, 0xa3ec7968
je 0x1000273f
jmp 0x10001753
mov eax, dword [ebp - 0xb0]
sub eax, 0xa58fc052
je 0x10002306
jmp 0x10001769
mov eax, dword [ebp - 0xb0]
sub eax, 0xa7e130af
je 0x10002c89
jmp 0x1000177f
mov eax, dword [ebp - 0xb0]
sub eax, 0xa89c92d3
je 0x100027c6
jmp 0x10001795
mov eax, dword [ebp - 0xb0]
sub eax, 0xabe9b683
je 0x1000299d
jmp 0x100017ab
mov eax, dword [ebp - 0xb0]
sub eax, 0xac747392
je 0x10003dbd
jmp 0x100017c1
mov eax, dword [ebp - 0xb0]
sub eax, 0xace2a5ab
je 0x10002dc4
jmp 0x100017d7
mov eax, dword [ebp - 0xb0]
sub eax, 0xaec99ecf
je 0x100033ef
jmp 0x100017ed
mov eax, dword [ebp - 0xb0]
sub eax, 0xb3260172
je 0x1000382b
jmp 0x10001803
mov eax, dword [ebp - 0xb0]
sub eax, 0xb43c33e1
je 0x10002664
jmp 0x10001819
mov eax, dword [ebp - 0xb0]
sub eax, 0xbbbc94e3
je 0x100039c0
jmp 0x1000182f
mov eax, dword [ebp - 0xb0]
sub eax, 0xc1298e1b
je 0x10003d80
jmp 0x10001845
mov eax, dword [ebp - 0xb0]
sub eax, 0xc404cc36
je 0x10002315
jmp 0x1000185b
mov eax, dword [ebp - 0xb0]
sub eax, 0xc47624b4
je 0x10003b57
jmp 0x10001871
mov eax, dword [ebp - 0xb0]
sub eax, 0xc53b4cf8
je 0x100037bd
jmp 0x10001887
mov eax, dword [ebp - 0xb0]
sub eax, 0xc5632412
je 0x10002aff
jmp 0x1000189d
mov eax, dword [ebp - 0xb0]
sub eax, 0xc624881d
je 0x10003d44
jmp 0x100018b3
mov eax, dword [ebp - 0xb0]
sub eax, 0xc8157aa5
je 0x10002a7a
jmp 0x100018c9
mov eax, dword [ebp - 0xb0]
sub eax, 0xcb270149
je 0x10002550
jmp 0x100018df
mov eax, dword [ebp - 0xb0]
sub eax, 0xcfc8073d
je 0x10002b80
jmp 0x100018f5
mov eax, dword [ebp - 0xb0]
sub eax, 0xd21aa61f
je 0x10002ec3
jmp 0x1000190b
mov eax, dword [ebp - 0xb0]
sub eax, 0xd25120bc
je 0x10003d26
jmp 0x10001921
mov eax, dword [ebp - 0xb0]
sub eax, 0xd3d3a5d7
je 0x1000261b
jmp 0x10001937
mov eax, dword [ebp - 0xb0]
sub eax, 0xd4ba8fa5
je 0x10003c1a
jmp 0x1000194d
mov eax, dword [ebp - 0xb0]
sub eax, 0xd54722e4
je 0x100025ca
jmp 0x10001963
mov eax, dword [ebp - 0xb0]
sub eax, 0xd5d95518
je 0x10003d35
jmp 0x10001979
mov eax, dword [ebp - 0xb0]
sub eax, 0xd66b4ce1
je 0x1000339e
jmp 0x1000198f
mov eax, dword [ebp - 0xb0]
sub eax, 0xd6ddf962
je 0x100027e0
jmp 0x100019a5
mov eax, dword [ebp - 0xb0]
sub eax, 0xd9093a1c
je 0x1000223b
jmp 0x100019bb
mov eax, dword [ebp - 0xb0]
sub eax, 0xd997b237
je 0x100027ac
jmp 0x100019d1
mov eax, dword [ebp - 0xb0]
sub eax, 0xdcc8faca
je 0x10002db5
jmp 0x100019e7
mov eax, dword [ebp - 0xb0]
sub eax, 0xdf70ac6e
je 0x1000304a
jmp 0x100019fd
mov eax, dword [ebp - 0xb0]
sub eax, 0xe87c14dc
je 0x10002a89
jmp 0x10001a13
mov eax, dword [ebp - 0xb0]
sub eax, 0xede43564
je 0x10003f7e
jmp 0x10001a29
mov eax, dword [ebp - 0xb0]
sub eax, 0xf0a163c8
je 0x100039b1
jmp 0x10001a3f
mov eax, dword [ebp - 0xb0]
sub eax, 0xf892e9f0
je 0x10002f68
jmp 0x10001a55
mov eax, dword [ebp - 0xb0]
sub eax, 0xf8aed1c1
je 0x10003ec8
jmp 0x10001a6b
mov eax, dword [ebp - 0xb0]
sub eax, 0xfce18ad7
je 0x10003ade
jmp 0x10001a81
mov eax, dword [ebp - 0xb0]
sub eax, 0xff763c53
je 0x10003e92
jmp 0x10001a97
mov eax, dword [ebp - 0xb0]
sub eax, 0x117c214
je 0x10002489
jmp 0x10001aad
mov eax, dword [ebp - 0xb0]
sub eax, 0x2e3e872
je 0x100035e2
jmp 0x10001ac3
mov eax, dword [ebp - 0xb0]
sub eax, 0x327f714
je 0x10003968
jmp 0x10001ad9
mov eax, dword [ebp - 0xb0]
sub eax, 0x9dad9bf
je 0x10002fb9
jmp 0x10001aef
mov eax, dword [ebp - 0xb0]
sub eax, 0xd98705f
je 0x10003d71
jmp 0x10001b05
mov eax, dword [ebp - 0xb0]
sub eax, 0xf853611
je 0x10003efb
jmp 0x10001b1b
mov eax, dword [ebp - 0xb0]
sub eax, 0x10504ab1
je 0x1000238b
jmp 0x10001b31
mov eax, dword [ebp - 0xb0]
sub eax, 0x13ae5413
je 0x10003d17
jmp 0x10001b47
mov eax, dword [ebp - 0xb0]
sub eax, 0x15d54f39
je 0x10002940
jmp 0x10001b5d
mov eax, dword [ebp - 0xb0]
sub eax, 0x19563b2a
je 0x10002e4d
mov dword [ebp - 0xa8], 0xd9093a1c
jmp 0x10003fe4
mov eax, dword [0x1006b0a8]
mov ecx, dword [0x1006b0a4]
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, 0xd5d95518
mov ecx, 0x61e39e40
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0xc404cc36
jmp 0x10003fe4
mov ecx, dword [0x1006b0a8]
mov eax, dword [0x1006b0a4]
mov edx, ecx
sub edx, 0xaa420845
sub edx, 1
add edx, 0xaa420845
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, 0xc624881d
mov ecx, 0x10504ab1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov ecx, dword [ebp - 0xac]
push eax
mov eax, esp
mov dword [ebp - 0x70], eax
push eax
mov eax, esp
mov dword [ebp - 0x6c], eax
push eax
mov eax, esp
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0xa0]
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0x9c]
mov dword [eax], ecx
mov eax, dword [0x1006b0a8]
mov ecx, dword [0x1006b0a4]
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, 0xc624881d
mov ecx, 0x29e0d462
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov eax, dword [0x1006b0a8]
mov ecx, dword [0x1006b0a4]
mov edx, eax
sub edx, 0xca2586ba
sub edx, 1
add edx, 0xca2586ba
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, 0xd98705f
mov ecx, 0x87c4e368
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov ecx, dword [0x1006b0a8]
mov eax, dword [0x1006b0a4]
mov edx, ecx
sub edx, 0x3809c4f
sub edx, 1
add edx, 0x3809c4f
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, 0x3a3ec567
mov ecx, 0xcb270149
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov eax, dword [ebp - 0x98]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.1000f160
add esp, 0xc
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax]
mov dword [ebp - 0x64], eax
mov eax, dword [0x1006b0a8]
mov ecx, dword [0x1006b0a4]
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, 0x3a3ec567
mov ecx, 0xd54722e4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov eax, dword [0x1006b0a8]
mov ecx, dword [0x1006b0a4]
mov edx, eax
sub edx, 0x449b3721
sub edx, 1
add edx, 0x449b3721
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, 0xc1298e1b
mov ecx, 0xd3d3a5d7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov eax, dword [0x1006b0a8]
mov ecx, dword [0x1006b0a4]
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, 0xc1298e1b
mov ecx, 0xb43c33e1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0x94004453
jmp 0x10003fe4
mov eax, dword [0x1006b0a8]
mov ecx, dword [0x1006b0a4]
mov edx, eax
sub edx, 0xd9400b49
sub edx, 1
add edx, 0xd9400b49
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, 0x5f02eed0
mov ecx, 0x7f764aad
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov dl, byte [ebp - 0x5d]
mov eax, 0x2b18442c
mov ecx, 0x9631982c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov eax, dword [ebp - 0x94]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x9c]
mov edx, dword [eax]
mov eax, dword [ebp - 0x98]
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 dword [ebp - 0xa8], 0xd997b237
jmp 0x10003fe4
mov eax, dword [ebp - 0x98]
mov eax, dword [eax]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0xa8], 0xa89c92d3
jmp 0x10003fe4
mov eax, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x5c]
mov dword [eax], ecx
mov dword [ebp - 0xa8], 0xd6ddf962
jmp 0x10003fe4
mov ecx, dword [0x1006b0a8]
mov eax, dword [0x1006b0a4]
mov edx, ecx
sub edx, 0xe9726457
sub edx, 1
add edx, 0xe9726457
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, 0xac747392
mov ecx, 0x601f5cbe
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0x32f3ada0
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0x4da08d78
jmp 0x10003fe4
mov eax, dword [0x1006b0a8]
mov ecx, dword [0x1006b0a4]
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, 0x7af6f831
mov ecx, 0x5426b453
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0xe87c14dc
jmp 0x10003fe4
mov ecx, dword [0x1006b0a8]
mov eax, dword [0x1006b0a4]
mov edx, ecx
add edx, 0x40520009
sub edx, 1
sub edx, 0x40520009
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, 0xff763c53
mov ecx, 0xc5632412
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov dword [ebp - 0x54], eax
mov ecx, dword [0x1006b0a8]
mov eax, dword [0x1006b0a4]
mov edx, ecx
add edx, 0xc6b638c7
sub edx, 1
sub edx, 0xc6b638c7
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, 0xff763c53
mov ecx, 0xcfc8073d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0x71b7b9f0
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0x4e8244bc
jmp 0x10003fe4
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0xa8], 0x7432829d
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0x4da08d78
jmp 0x10003fe4
mov eax, dword [ebp - 0x84]
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 - 0x80]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x7c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x7c]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0x3c]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0xa8], 0x46268ed0
jmp 0x10003fe4
mov eax, dword [ebp - 0x74]
mov word [eax], 0
mov ecx, dword [0x1006b0a8]
mov eax, dword [0x1006b0a4]
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, 0xc47624b4
mov ecx, 0x844350eb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0x80d9cfd3
jmp 0x10003fe4
mov eax, dword [ebp - 0x74]
movzx eax, word [eax]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0xa8], 0xf892e9f0
jmp 0x10003fe4
mov eax, dword [0x1006b0a8]
mov ecx, dword [0x1006b0a4]
mov edx, eax
sub edx, 0x5218271f
sub edx, 1
add edx, 0x5218271f
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, 0x3ae9fd09
mov ecx, 0x9dad9bf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov eax, dword [ebp - 0x40]
add eax, 4
add eax, 2
mov dword [ebp - 0x3c], eax
mov ecx, dword [0x1006b0a8]
mov eax, dword [0x1006b0a4]
mov edx, ecx
add edx, 0x533c43b5
sub edx, 1
sub edx, 0x533c43b5
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, 0x3ae9fd09
mov ecx, 0x38802dcb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov ecx, dword [0x1006b0a8]
mov eax, dword [0x1006b0a4]
mov edx, ecx
add edx, 0xb1857a9c
sub edx, 1
sub edx, 0xb1857a9c
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, 0xf8aed1c1
mov ecx, 0x3f4e76f3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0xa8], 0xd66b4ce1
jmp 0x10003fe4
mov eax, dword [0x1006b0a8]
mov ecx, dword [0x1006b0a4]
mov edx, eax
add edx, 0x1174c20f
sub edx, 1
sub edx, 0x1174c20f
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, 0xf853611
mov ecx, 0xaec99ecf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov ecx, dword [ebp - 0x34]
xor eax, eax
mov edx, eax
add edx, 0x18
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
movzx edx, word [eax + 0x14]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x74]
movzx eax, word [eax]
imul edx, eax, 0x28
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 - 0x70]
mov dword [eax], ecx
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10019190
call fcn.100100f0
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x2d], al
mov ecx, dword [0x1006b0a8]
mov eax, dword [0x1006b0a4]
mov edx, ecx
add edx, 0x8bc5e25c
sub edx, 1
sub edx, 0x8bc5e25c
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, 0xf853611
mov ecx, 0x42f789ac
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov eax, dword [ebp - 0x24]
mov edx, dword [eax + 0xc]
mov ecx, dword [ebp - 0x28]
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 - 0x70]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x2c]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.1000f2c0
add esp, 0xc
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa8], 0x2e3e872
jmp 0x10003fe4
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax + 8]
mov eax, dword [ebp - 0x90]
mov esi, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov ecx, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
sub esi, eax
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x20]
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 - 0x68]
mov byte [eax], cl
mov dword [ebp - 0xa8], 0x63432b15
jmp 0x10003fe4
mov ecx, dword [0x1006b0a8]
mov eax, dword [0x1006b0a4]
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, 0x5a3195e1
mov ecx, 0xb3260172
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov ecx, dword [0x1006b0a8]
mov eax, dword [0x1006b0a4]
mov edx, ecx
sub edx, 0x221eae08
sub edx, 1
add edx, 0x221eae08
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, 0x5a3195e1
mov ecx, 0x261bb3b4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov eax, dword [0x1006b0a8]
mov ecx, dword [0x1006b0a4]
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, 0x97232a8b
mov ecx, 0xf0a163c8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0x80d9cfd3
jmp 0x10003fe4
mov eax, dword [0x1006b0a8]
mov ecx, dword [0x1006b0a4]
mov edx, eax
sub edx, 0x20409aa2
sub edx, 1
add edx, 0x20409aa2
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, 0x90517528
mov ecx, 0x70cc6896
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov eax, dword [ebp - 0x10]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa8], 0x4da08d78
jmp 0x10003fe4
mov eax, dword [ebp - 0x74]
mov word [eax], 0
mov dword [ebp - 0xa8], 0xd21aa61f
jmp 0x10003fe4
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0xa8], 0x4169f2e1
jmp 0x10003fe4
mov eax, dword [0x1006b0a8]
mov ecx, dword [0x1006b0a4]
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, 0x9541ba8e
mov ecx, 0x436b8524
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0x70cc6896
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0x2f78a08f
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0x61e39e40
jmp 0x10003fe4
mov ecx, dword [ebp - 0xac]
mov eax, dword [ebp - 0xa0]
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0x9c]
mov dword [eax], ecx
mov dword [ebp - 0xa8], 0x10504ab1
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0x117c214
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0xd3d3a5d7
jmp 0x10003fe4
mov eax, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x94]
mov ecx, dword [ecx]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov eax, dword [ebp - 0x8c]
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 - 0x88]
mov dword [eax], ecx
mov dword [ebp - 0xa8], 0x601f5cbe
jmp 0x10003fe4
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0xa8], 0xc5632412
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0x50e6f9bb
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0x3f4e76f3
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0x62df85c2
jmp 0x10003fe4
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x34]
xor eax, eax
mov edx, eax
add edx, 0x18
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
movzx edx, word [eax + 0x14]
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]
movzx eax, word [eax]
imul edx, eax, 0x28
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 - 0x70]
mov dword [eax], ecx
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10019190
call fcn.100100f0
add esp, 8
mov dword [ebp - 0xa8], 0xaec99ecf
jmp 0x10003fe4
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0xa8], 0x2069ba2c
jmp 0x10003fe4
mov dword [ebp - 0xa8], 0x327f714
jmp 0x10003fe4
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0xa8], 0x29055635
jmp 0x10003fe4
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 - 0x84]
mov dword [ebp - 0xa8], 0x436b8524
jmp 0x100015d7