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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x98
mov eax, dword [ebp + 8]
mov dword [ebp - 0xa0], eax
mov eax, dword [0x1006a204]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x96], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x95], al
mov dword [ebp - 0x9c], 0xec2be982
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0xa4], eax
sub eax, 0x83d66c06
je 0x10002e09
jmp 0x1000195c
mov eax, dword [ebp - 0xa4]
sub eax, 0x84d80a49
je 0x10002e5a
jmp 0x10001972
mov eax, dword [ebp - 0xa4]
sub eax, 0x85249b78
je 0x10002794
jmp 0x10001988
mov eax, dword [ebp - 0xa4]
sub eax, 0x8562853f
je 0x10002f29
jmp 0x1000199e
mov eax, dword [ebp - 0xa4]
sub eax, 0x856cd5a3
je 0x100034cc
jmp 0x100019b4
mov eax, dword [ebp - 0xa4]
sub eax, 0x86f82097
je 0x100039d9
jmp 0x100019ca
mov eax, dword [ebp - 0xa4]
sub eax, 0x8707fd47
je 0x1000252c
jmp 0x100019e0
mov eax, dword [ebp - 0xa4]
sub eax, 0x89faf122
je 0x10002682
jmp 0x100019f6
mov eax, dword [ebp - 0xa4]
sub eax, 0x9062747e
je 0x1000448b
jmp 0x10001a0c
mov eax, dword [ebp - 0xa4]
sub eax, 0x91336528
je 0x100028ca
jmp 0x10001a22
mov eax, dword [ebp - 0xa4]
sub eax, 0x94694e04
je 0x100029c7
jmp 0x10001a38
mov eax, dword [ebp - 0xa4]
sub eax, 0x949c6ea5
je 0x10002f8a
jmp 0x10001a4e
mov eax, dword [ebp - 0xa4]
sub eax, 0x94cbfdbb
je 0x1000429b
jmp 0x10001a64
mov eax, dword [ebp - 0xa4]
sub eax, 0x97707355
je 0x10003c78
jmp 0x10001a7a
mov eax, dword [ebp - 0xa4]
sub eax, 0x9a7765c6
je 0x10003ef5
jmp 0x10001a90
mov eax, dword [ebp - 0xa4]
sub eax, 0x9b2c348d
je 0x100042e1
jmp 0x10001aa6
mov eax, dword [ebp - 0xa4]
sub eax, 0x9c5420d3
je 0x1000437f
jmp 0x10001abc
mov eax, dword [ebp - 0xa4]
sub eax, 0xa07a0107
je 0x10002d93
jmp 0x10001ad2
mov eax, dword [ebp - 0xa4]
sub eax, 0xa07acf38
je 0x10003d9f
jmp 0x10001ae8
mov eax, dword [ebp - 0xa4]
sub eax, 0xa1d4eb37
je 0x10002c1f
jmp 0x10001afe
mov eax, dword [ebp - 0xa4]
sub eax, 0xa25c18f5
je 0x100026f8
jmp 0x10001b14
mov eax, dword [ebp - 0xa4]
sub eax, 0xa5180d30
je 0x1000409a
jmp 0x10001b2a
mov eax, dword [ebp - 0xa4]
sub eax, 0xa5d6f768
je 0x10003c87
jmp 0x10001b40
mov eax, dword [ebp - 0xa4]
sub eax, 0xa7a07de1
je 0x10002ed8
jmp 0x10001b56
mov eax, dword [ebp - 0xa4]
sub eax, 0xabc04343
je 0x10003a2a
jmp 0x10001b6c
mov eax, dword [ebp - 0xa4]
sub eax, 0xad8dd82c
je 0x1000447c
jmp 0x10001b82
mov eax, dword [ebp - 0xa4]
sub eax, 0xadef5a76
je 0x10003375
jmp 0x10001b98
mov eax, dword [ebp - 0xa4]
sub eax, 0xaf82e185
je 0x10002f4f
jmp 0x10001bae
mov eax, dword [ebp - 0xa4]
sub eax, 0xb1a2c5d4
je 0x100025b9
jmp 0x10001bc4
mov eax, dword [ebp - 0xa4]
sub eax, 0xb28474bc
je 0x10003ee3
jmp 0x10001bda
mov eax, dword [ebp - 0xa4]
sub eax, 0xb48a4148
je 0x100036e9
jmp 0x10001bf0
mov eax, dword [ebp - 0xa4]
sub eax, 0xb4e14e73
je 0x100038c5
jmp 0x10001c06
mov eax, dword [ebp - 0xa4]
sub eax, 0xb9902d0d
je 0x10003272
jmp 0x10001c1c
mov eax, dword [ebp - 0xa4]
sub eax, 0xb9d3fb07
je 0x1000436d
jmp 0x10001c32
mov eax, dword [ebp - 0xa4]
sub eax, 0xc1af3736
je 0x10003202
jmp 0x10001c48
mov eax, dword [ebp - 0xa4]
sub eax, 0xc1d70ac9
je 0x100027c0
jmp 0x10001c5e
mov eax, dword [ebp - 0xa4]
sub eax, 0xc3d73b78
je 0x10004186
jmp 0x10001c74
mov eax, dword [ebp - 0xa4]
sub eax, 0xc521c42c
je 0x1000368c
jmp 0x10001c8a
mov eax, dword [ebp - 0xa4]
sub eax, 0xc593198d
je 0x10004338
jmp 0x10001ca0
mov eax, dword [ebp - 0xa4]
sub eax, 0xc95376ac
je 0x10004110
jmp 0x10001cb6
mov eax, dword [ebp - 0xa4]
sub eax, 0xcaf5f218
je 0x10003263
jmp 0x10001ccc
mov eax, dword [ebp - 0xa4]
sub eax, 0xcc4fffa9
je 0x10004433
jmp 0x10001ce2
mov eax, dword [ebp - 0xa4]
sub eax, 0xcc792925
je 0x10003801
jmp 0x10001cf8
mov eax, dword [ebp - 0xa4]
sub eax, 0xcce311ae
je 0x10002a3d
jmp 0x10001d0e
mov eax, dword [ebp - 0xa4]
sub eax, 0xd0c1ed06
je 0x10002bce
jmp 0x10001d24
mov eax, dword [ebp - 0xa4]
sub eax, 0xd0cf104a
je 0x100027cf
jmp 0x10001d3a
mov eax, dword [ebp - 0xa4]
sub eax, 0xd18165e6
je 0x10002d46
jmp 0x10001d50
mov eax, dword [ebp - 0xa4]
sub eax, 0xd38ba8e2
je 0x1000355d
jmp 0x10001d66
mov eax, dword [ebp - 0xa4]
sub eax, 0xd4443874
je 0x10002986
jmp 0x10001d7c
mov eax, dword [ebp - 0xa4]
sub eax, 0xd4e03c22
je 0x100041e6
jmp 0x10001d92
mov eax, dword [ebp - 0xa4]
sub eax, 0xd6249ba5
je 0x10004347
jmp 0x10001da8
mov eax, dword [ebp - 0xa4]
sub eax, 0xd717f520
je 0x1000369b
jmp 0x10001dbe
mov eax, dword [ebp - 0xa4]
sub eax, 0xda0292aa
je 0x10002f38
jmp 0x10001dd4
mov eax, dword [ebp - 0xa4]
sub eax, 0xe17ec22d
je 0x10002ad6
jmp 0x10001dea
mov eax, dword [ebp - 0xa4]
sub eax, 0xe2245011
je 0x10003b32
jmp 0x10001e00
mov eax, dword [ebp - 0xa4]
sub eax, 0xe3b8062f
je 0x100032e8
jmp 0x10001e16
mov eax, dword [ebp - 0xa4]
sub eax, 0xe5650fd0
je 0x10002fdb
jmp 0x10001e2c
mov eax, dword [ebp - 0xa4]
sub eax, 0xe6b44030
je 0x10003034
jmp 0x10001e42
mov eax, dword [ebp - 0xa4]
sub eax, 0xe91b42ea
je 0x10002568
jmp 0x10001e58
mov eax, dword [ebp - 0xa4]
sub eax, 0xeb3bf88c
je 0x10003465
jmp 0x10001e6e
mov eax, dword [ebp - 0xa4]
sub eax, 0xeb6048ae
je 0x10004445
jmp 0x10001e84
mov eax, dword [ebp - 0xa4]
sub eax, 0xec2be982
je 0x10002435
jmp 0x10001e9a
mov eax, dword [ebp - 0xa4]
sub eax, 0xed19356e
je 0x1000356c
jmp 0x10001eb0
mov eax, dword [ebp - 0xa4]
sub eax, 0xedc1915e
je 0x10002b07
jmp 0x10001ec6
mov eax, dword [ebp - 0xa4]
sub eax, 0xedea2ffd
je 0x10002785
mov al, byte [ebp - 0x96]
mov cl, byte [ebp - 0x95]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x9a7765c6
mov ecx, 0xfdaaf833
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov dword [ebp - 0x9c], 0x147a691c
jmp 0x100044d6
mov eax, dword [0x1006b4a8]
mov ecx, dword [0x1006b4a4]
mov edx, eax
sub edx, 0x7b13b7b
sub edx, 1
add edx, 0x7b13b7b
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, 0x5a3451d5
mov ecx, 0xb1a2c5d4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0x94]
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0x90]
mov dword [eax], ecx
mov eax, dword [ebp - 0x8c]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.10010fa0
add esp, 0xc
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
mov edx, ecx
add edx, 0x9008c559
sub edx, 1
sub edx, 0x9008c559
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, 0x5a3451d5
mov ecx, 0xf5d0f4f6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
mov edx, ecx
add edx, 0xb74960ab
sub edx, 1
sub edx, 0xb74960ab
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, 0x1e492826
mov ecx, 0xa25c18f5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x58], eax
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
mov edx, ecx
add edx, 0xb463b5d4
sub edx, 1
sub edx, 0xb463b5d4
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, 0x1e492826
mov ecx, 0xedea2ffd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x58]
mov dword [eax], ecx
mov edx, dword [ebp - 0x88]
mov eax, 0xc1d70ac9
mov ecx, 0xd0cf104a
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov dword [ebp - 0x9c], 0xb28474bc
jmp 0x100044d6
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
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, 0x94cbfdbb
mov ecx, 0x1088ef27
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov dword [ebp - 0x9c], 0x1717c68e
jmp 0x100044d6
mov dword [ebp - 0x9c], 0x1f02f6d0
jmp 0x100044d6
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
mov edx, ecx
add edx, 0x805025e4
sub edx, 1
sub edx, 0x805025e4
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, 0x9b2c348d
mov ecx, 0xcce311ae
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov eax, dword [ebp - 0x80]
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 - 0x7c]
mov dword [eax], ecx
mov eax, dword [0x1006b4a8]
mov ecx, dword [0x1006b4a4]
mov edx, eax
add edx, 0xe725fdfa
sub edx, 1
sub edx, 0xe725fdfa
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, 0x9b2c348d
mov ecx, 0xe17ec22d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov dword [ebp - 0x9c], 0x4f36ee27
jmp 0x100044d6
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
mov edx, ecx
add edx, 0x4d65af19
sub edx, 1
sub edx, 0x4d65af19
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, 0xc593198d
mov ecx, 0x2dfad31e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov eax, dword [0x1006b4a8]
mov ecx, dword [0x1006b4a4]
mov edx, eax
add edx, 0xf42f04ca
sub edx, 1
sub edx, 0xf42f04ca
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, 0x432c4820
mov ecx, 0xa1d4eb37
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov eax, dword [0x1006b4a8]
mov ecx, dword [0x1006b4a4]
mov edx, eax
sub edx, 0x105b452f
sub edx, 1
add edx, 0x105b452f
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, 0xd6249ba5
mov ecx, 0x30d1d49a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov eax, dword [ebp - 0x7c]
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 - 0x50], eax
mov dword [ebp - 0x9c], 0xa07a0107
jmp 0x100044d6
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
mov edx, ecx
sub edx, 0xbb1a89f3
sub edx, 1
add edx, 0xbb1a89f3
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, 0x23658ae9
mov ecx, 0x83d66c06
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov eax, dword [0x1006b4a8]
mov ecx, dword [0x1006b4a4]
mov edx, eax
sub edx, 0xd49a275d
sub edx, 1
add edx, 0xd49a275d
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, 0x26370571
mov ecx, 0x84d80a49
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x50]
mov dword [eax], ecx
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
mov edx, ecx
sub edx, 0xe73d890d
sub edx, 1
add edx, 0xe73d890d
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, 0x26370571
mov ecx, 0xa7a07de1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov eax, dword [0x1006b4a8]
mov ecx, dword [0x1006b4a4]
mov edx, eax
sub edx, 0x51a94ab6
sub edx, 1
add edx, 0x51a94ab6
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, 0x23658ae9
mov ecx, 0x8562853f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov dword [ebp - 0x9c], 0xda0292aa
jmp 0x100044d6
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x9c], 0xaf82e185
jmp 0x100044d6
mov eax, dword [ebp - 0x4c]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x45], al
mov dword [ebp - 0x9c], 0xf8b46dfc
jmp 0x100044d6
mov eax, dword [0x1006b4a8]
mov ecx, dword [0x1006b4a4]
mov edx, eax
sub edx, 0x290506ef
sub edx, 1
add edx, 0x290506ef
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, 0xb9d3fb07
mov ecx, 0xe5650fd0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov dword [ebp - 0x44], eax
mov eax, dword [0x1006b4a8]
mov ecx, dword [0x1006b4a4]
mov edx, eax
sub edx, 0x799e257d
sub edx, 1
add edx, 0x799e257d
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, 0xb9d3fb07
mov ecx, 0xe6b44030
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov dword [ebp - 0x9c], 0x2c7eea3d
jmp 0x100044d6
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x3c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x68]
mov word [eax], 0
mov eax, dword [0x1006b4a8]
mov ecx, dword [0x1006b4a4]
mov edx, eax
sub edx, 0x5012a873
sub edx, 1
add edx, 0x5012a873
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, 0x47cebf48
mov ecx, 0xcaf5f218
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov dword [ebp - 0x9c], 0xb9902d0d
jmp 0x100044d6
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
mov edx, ecx
add edx, 0x51e3f9c5
sub edx, 1
sub edx, 0x51e3f9c5
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, 0x4831137e
mov ecx, 0xe3b8062f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov eax, dword [ebp - 0x68]
movzx eax, word [eax]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
add eax, 4
add eax, 2
mov dword [ebp - 0x34], eax
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
mov edx, ecx
add edx, 0x135c3d1e
sub edx, 1
sub edx, 0x135c3d1e
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, 0x4831137e
mov ecx, 0xadef5a76
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov dword [ebp - 0x9c], 0x67b9b77f
jmp 0x100044d6
mov dl, byte [ebp - 0x2d]
mov eax, 0x38e22432
mov ecx, 0xfe2d119f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
xor ecx, ecx
mov edx, ecx
add edx, 0x18
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
mov edx, ecx
sub edx, 0xe73870f3
sub edx, 1
add edx, 0xe73870f3
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, 0x35bb71f0
mov ecx, 0xd38ba8e2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov dword [ebp - 0x9c], 0xed19356e
jmp 0x100044d6
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
mov edx, ecx
sub edx, 0xf95afd25
sub edx, 1
add edx, 0xf95afd25
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, 0x4ec69dc2
mov ecx, 0x4f8f5ec2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov dword [ebp - 0x9c], 0xd717f520
jmp 0x100044d6
mov ecx, dword [ebp - 0x24]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x1001b190
call fcn.10011f30
add esp, 8
mov edx, eax
mov eax, 0x77b99c31
mov ecx, 0xcc792925
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x84]
mov edx, dword [eax]
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add edx, 0x23724c5f
add edx, eax
sub edx, 0x23724c5f
mov eax, dword [ebp - 0x60]
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 - 0x5c]
mov byte [eax], cl
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x64]
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 - 0x74]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x9c], 0x42ed6e44
jmp 0x100044d6
mov dword [ebp - 0x9c], 0x35b8f52
jmp 0x100044d6
mov dword [ebp - 0x9c], 0xf3112ca3
jmp 0x100044d6
mov eax, dword [0x1006b4a8]
mov ecx, dword [0x1006b4a4]
mov edx, eax
add edx, 0xbc54a084
sub edx, 1
sub edx, 0xbc54a084
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, 0x49178698
mov ecx, 0xabc04343
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
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, 0x49178698
mov ecx, 0x1c6cb655
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov dword [ebp - 0x9c], 0xb9902d0d
jmp 0x100044d6
mov dword [ebp - 0x9c], 0xa5d6f768
jmp 0x100044d6
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
mov edx, ecx
sub edx, 0x42d95e01
sub edx, 1
add edx, 0x42d95e01
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, 0xf1fcc1bf
mov ecx, 0x6b89b2f7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
mov edx, ecx
sub edx, 0xc7ebae4c
sub edx, 1
add edx, 0xc7ebae4c
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, 0xad8dd82c
mov ecx, 0x86aa153
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10010370
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0x9c], 0xfdaaf833
jmp 0x100044d6
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
mov edx, ecx
sub edx, 0xf5a5a33d
sub edx, 1
add edx, 0xf5a5a33d
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, 0x6474ce03
mov ecx, 0xc95376ac
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov ecx, dword [0x1006b4a8]
mov eax, dword [0x1006b4a4]
mov edx, ecx
add edx, 0x2c6bf881
sub edx, 1
sub edx, 0x2c6bf881
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, 0x6474ce03
mov ecx, 0xc3d73b78
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov dword [ebp - 0x9c], 0x34e3e817
jmp 0x100044d6
mov eax, dword [ebp - 0x14]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x1006b4a8]
mov ecx, dword [0x1006b4a4]
mov edx, eax
sub edx, 0x684d2b8f
sub edx, 1
add edx, 0x684d2b8f
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, 0x7e3c5d3
mov ecx, 0x38fb6705
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100044d6
mov eax, dword [ebp - 0x88]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x90]
mov edx, dword [eax]
mov eax, dword [ebp - 0x8c]
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 - 0x8c]
mov dword [ebp - 0x9c], 0x1088ef27
jmp 0x100044d6
mov eax, dword [ebp - 0x80]
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 - 0x7c]
mov dword [eax], ecx
mov dword [ebp - 0x9c], 0xcce311ae
jmp 0x100044d6
mov dword [ebp - 0x9c], 0x2dfad31e
jmp 0x100044d6
mov dword [ebp - 0x9c], 0x30d1d49a
jmp 0x100044d6
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x9c], 0xe5650fd0
jmp 0x100044d6
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x40]
mov dword [eax], ecx
mov eax, dword [ebp - 0x84]
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x9c], 0x70993852
jmp 0x100044d6
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x9c], 0x3407eee2
jmp 0x100044d6
mov eax, dword [ebp - 0x68]
mov cx, word [ebp - 0x16]
mov word [eax], cx
mov dword [ebp - 0x9c], 0xfd80fc53
jmp 0x100044d6
mov dword [ebp - 0x9c], 0x86aa153
jmp 0x100044d6
mov dword [ebp - 0x9c], 0x17e30549
jmp 0x100044d6
jmp 0x10001940