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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xa4
mov eax, dword [ebp + 8]
mov dword [ebp - 0xac], eax
mov eax, dword [0x10070404]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x100716a8]
mov eax, dword [0x100716a4]
mov edx, ecx
sub edx, 0xbc6fd3f3
sub edx, 1
add edx, 0xbc6fd3f3
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], 0xab31c811
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xb0], eax
sub eax, 0x83e2897a
je 0x10004977
jmp 0x100015c4
mov eax, dword [ebp - 0xb0]
sub eax, 0x855f1012
je 0x10004225
jmp 0x100015da
mov eax, dword [ebp - 0xb0]
sub eax, 0x86273672
je 0x100038d8
jmp 0x100015f0
mov eax, dword [ebp - 0xb0]
sub eax, 0x88e7d775
je 0x10004dff
jmp 0x10001606
mov eax, dword [ebp - 0xb0]
sub eax, 0x8c5e5496
je 0x10003031
jmp 0x1000161c
mov eax, dword [ebp - 0xb0]
sub eax, 0x931c0608
je 0x10004c8a
jmp 0x10001632
mov eax, dword [ebp - 0xb0]
sub eax, 0x93833df2
je 0x10003998
jmp 0x10001648
mov eax, dword [ebp - 0xb0]
sub eax, 0x938ae5be
je 0x10003e65
jmp 0x1000165e
mov eax, dword [ebp - 0xb0]
sub eax, 0x93981b33
je 0x10004ae0
jmp 0x10001674
mov eax, dword [ebp - 0xb0]
sub eax, 0x93c608bb
je 0x100025ef
jmp 0x1000168a
mov eax, dword [ebp - 0xb0]
sub eax, 0x96d575c2
je 0x10002cae
jmp 0x100016a0
mov eax, dword [ebp - 0xb0]
sub eax, 0x97fddd11
je 0x100043ca
jmp 0x100016b6
mov eax, dword [ebp - 0xb0]
sub eax, 0x99818390
je 0x10003c78
jmp 0x100016cc
mov eax, dword [ebp - 0xb0]
sub eax, 0x9a58dd5e
je 0x10003f9d
jmp 0x100016e2
mov eax, dword [ebp - 0xb0]
sub eax, 0x9b51be68
je 0x10004ab0
jmp 0x100016f8
mov eax, dword [ebp - 0xb0]
sub eax, 0x9d24c62e
je 0x10002fe0
jmp 0x1000170e
mov eax, dword [ebp - 0xb0]
sub eax, 0x9d28fdf8
je 0x1000316d
jmp 0x10001724
mov eax, dword [ebp - 0xb0]
sub eax, 0x9db3251c
je 0x10003f3b
jmp 0x1000173a
mov eax, dword [ebp - 0xb0]
sub eax, 0x9e676b24
je 0x100028d2
jmp 0x10001750
mov eax, dword [ebp - 0xb0]
sub eax, 0xa1f9491d
je 0x10003222
jmp 0x10001766
mov eax, dword [ebp - 0xb0]
sub eax, 0xa40b0239
je 0x10004dba
jmp 0x1000177c
mov eax, dword [ebp - 0xb0]
sub eax, 0xa522643f
je 0x10004d82
jmp 0x10001792
mov eax, dword [ebp - 0xb0]
sub eax, 0xa79f05d6
je 0x10004d34
jmp 0x100017a8
mov eax, dword [ebp - 0xb0]
sub eax, 0xa85df24a
je 0x10004cf6
jmp 0x100017be
mov eax, dword [ebp - 0xb0]
sub eax, 0xa8f6f743
je 0x10003ff5
jmp 0x100017d4
mov eax, dword [ebp - 0xb0]
sub eax, 0xab31c811
je 0x10002373
jmp 0x100017ea
mov eax, dword [ebp - 0xb0]
sub eax, 0xaca93bb2
je 0x10002d2f
jmp 0x10001800
mov eax, dword [ebp - 0xb0]
sub eax, 0xaee3f3a9
je 0x10004c00
jmp 0x10001816
mov eax, dword [ebp - 0xb0]
sub eax, 0xaffa36f2
je 0x10003b8c
jmp 0x1000182c
mov eax, dword [ebp - 0xb0]
sub eax, 0xb34ea2d7
je 0x10004760
jmp 0x10001842
mov eax, dword [ebp - 0xb0]
sub eax, 0xb3571e5d
je 0x10003089
jmp 0x10001858
mov eax, dword [ebp - 0xb0]
sub eax, 0xb3719dfe
je 0x1000483c
jmp 0x1000186e
mov eax, dword [ebp - 0xb0]
sub eax, 0xb5f6cb08
je 0x10004c0f
jmp 0x10001884
mov eax, dword [ebp - 0xb0]
sub eax, 0xb7ef4e1a
je 0x100044a2
jmp 0x1000189a
mov eax, dword [ebp - 0xb0]
sub eax, 0xb8bad806
je 0x100049f3
jmp 0x100018b0
mov eax, dword [ebp - 0xb0]
sub eax, 0xb8e2467b
je 0x10002d11
jmp 0x100018c6
mov eax, dword [ebp - 0xb0]
sub eax, 0xbabcec57
je 0x10002bf2
jmp 0x100018dc
mov eax, dword [ebp - 0xb0]
sub eax, 0xbce5235b
je 0x100024d1
jmp 0x100018f2
mov eax, dword [ebp - 0xb0]
sub eax, 0xc0b87a6b
je 0x100042f6
jmp 0x10001908
mov eax, dword [ebp - 0xb0]
sub eax, 0xc0ead0c4
je 0x100026ca
jmp 0x1000191e
mov eax, dword [ebp - 0xb0]
sub eax, 0xc24201ff
je 0x10003878
jmp 0x10001934
mov eax, dword [ebp - 0xb0]
sub eax, 0xc3ebbb07
je 0x10004b56
jmp 0x1000194a
mov eax, dword [ebp - 0xb0]
sub eax, 0xc3ed56b7
je 0x1000429b
jmp 0x10001960
mov eax, dword [ebp - 0xb0]
sub eax, 0xc41c910f
je 0x10002a29
jmp 0x10001976
mov eax, dword [ebp - 0xb0]
sub eax, 0xc74c1292
je 0x10002c5d
jmp 0x1000198c
mov eax, dword [ebp - 0xb0]
sub eax, 0xc90fb6d8
je 0x10002492
jmp 0x100019a2
mov eax, dword [ebp - 0xb0]
sub eax, 0xc9af3224
je 0x10003887
jmp 0x100019b8
mov eax, dword [ebp - 0xb0]
sub eax, 0xcb0d58e2
je 0x10004493
jmp 0x100019ce
mov eax, dword [ebp - 0xb0]
sub eax, 0xcdb5c8a6
je 0x10002b49
jmp 0x100019e4
mov eax, dword [ebp - 0xb0]
sub eax, 0xcdc49da2
je 0x1000499e
jmp 0x100019fa
mov eax, dword [ebp - 0xb0]
sub eax, 0xd1733713
je 0x1000353e
jmp 0x10001a10
mov eax, dword [ebp - 0xb0]
sub eax, 0xd296eb5e
je 0x100038f6
jmp 0x10001a26
mov eax, dword [ebp - 0xb0]
sub eax, 0xd3da46a0
je 0x10004bcd
jmp 0x10001a3c
mov eax, dword [ebp - 0xb0]
sub eax, 0xd5aac800
je 0x10004894
jmp 0x10001a52
mov eax, dword [ebp - 0xb0]
sub eax, 0xd9e861d5
je 0x1000330e
jmp 0x10001a68
mov eax, dword [ebp - 0xb0]
sub eax, 0xdb3ee158
je 0x10004356
jmp 0x10001a7e
mov eax, dword [ebp - 0xb0]
sub eax, 0xde2fa5cf
je 0x100030ff
jmp 0x10001a94
mov eax, dword [ebp - 0xb0]
sub eax, 0xdf1cc20f
je 0x10003459
jmp 0x10001aaa
mov eax, dword [ebp - 0xb0]
sub eax, 0xe04952eb
je 0x10004be2
jmp 0x10001ac0
mov eax, dword [ebp - 0xb0]
sub eax, 0xe07bd7e3
je 0x10004935
jmp 0x10001ad6
mov eax, dword [ebp - 0xb0]
sub eax, 0xe11b0c29
je 0x10004b9e
jmp 0x10001aec
mov eax, dword [ebp - 0xb0]
sub eax, 0xe2c60477
je 0x10004c75
jmp 0x10001b02
mov eax, dword [ebp - 0xb0]
sub eax, 0xe45f4860
je 0x100025e0
jmp 0x10001b18
mov eax, dword [ebp - 0xb0]
sub eax, 0xe4c0ce63
je 0x100034b9
jmp 0x10001b2e
mov eax, dword [ebp - 0xb0]
sub eax, 0xe51c06ad
je 0x10002e86
mov bl, byte [ebp - 0xa2]
mov dh, byte [ebp - 0xa1]
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, 0x93981b33
mov ecx, 0x686d982a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
push eax
mov eax, esp
mov dword [ebp - 0x84], eax
push eax
mov eax, esp
mov dword [ebp - 0x80], eax
push eax
mov eax, esp
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0xa8], 0x189ae6c7
jmp 0x10004e59
mov eax, dword [0x100716a8]
mov ecx, dword [0x100716a4]
mov edx, eax
add edx, 0x2f2ae9d2
sub edx, 1
sub edx, 0x2f2ae9d2
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, 0x4cce408a
mov ecx, 0x5273cd22
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov dword [ebp - 0xa8], 0x93c608bb
jmp 0x10004e59
mov ecx, dword [0x100716a8]
mov eax, dword [0x100716a4]
mov edx, ecx
sub edx, 0xff40d9e3
sub edx, 1
add edx, 0xff40d9e3
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, 0x7a09baf9
mov ecx, 0x650c98e1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov dl, byte [ebp - 0x5d]
mov eax, 0x56ab051a
mov ecx, 0x5418cce1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov eax, dword [0x100716a8]
mov ecx, dword [0x100716a4]
mov edx, eax
add edx, 0x9966b6e9
sub edx, 1
sub edx, 0x9966b6e9
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, 0x79a8cfec
mov ecx, 0x1461085b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov ecx, dword [0x100716a8]
mov eax, dword [0x100716a4]
mov edx, ecx
sub edx, 0xcc3c715
sub edx, 1
add edx, 0xcc3c715
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, 0xc3ebbb07
mov ecx, 0x7e19e5d8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov eax, dword [0x100716a8]
mov ecx, dword [0x100716a4]
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, 0xbf9b026
mov ecx, 0x54227aa2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x4c]
mov dword [eax], ecx
mov eax, dword [0x100716a8]
mov ecx, dword [0x100716a4]
mov edx, eax
add edx, 0xc7ea031a
sub edx, 1
sub edx, 0xc7ea031a
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, 0xe11b0c29
mov ecx, 0x2b631565
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov eax, dword [0x100716a8]
mov ecx, dword [0x100716a4]
mov edx, eax
sub edx, 0x8a606945
sub edx, 1
add edx, 0x8a606945
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, 0x4da708b7
mov ecx, 0x96d575c2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
mov eax, dword [0x100716a8]
mov ecx, dword [0x100716a4]
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, 0x4da708b7
mov ecx, 0x75e13365
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov edx, dword [ebp - 0x48]
mov eax, 0xaca93bb2
mov ecx, 0x7ea92633
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov ecx, dword [0x100716a8]
mov eax, dword [0x100716a4]
mov edx, ecx
add edx, 0xa48bd2ac
sub edx, 1
sub edx, 0xa48bd2ac
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, 0xd3da46a0
mov ecx, 0x64e59e9f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov eax, dword [0x100716a8]
mov ecx, dword [0x100716a4]
mov edx, eax
add edx, 0x62128a4
sub edx, 1
sub edx, 0x62128a4
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, 0xb3719dfe
mov ecx, 0x8c5e5496
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov dword [ebp - 0xa8], 0xf07f6f86
jmp 0x10004e59
mov ecx, dword [0x100716a8]
mov eax, dword [0x100716a4]
mov edx, ecx
sub edx, 0xe2719647
sub edx, 1
add edx, 0xe2719647
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, 0xb5f6cb08
mov ecx, 0xde2fa5cf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov ecx, dword [0x100716a8]
mov eax, dword [0x100716a4]
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, 0xee00f3a6
mov ecx, 0x9d28fdf8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
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 dword [ebp - 0x40], eax
mov eax, dword [0x100716a8]
mov ecx, dword [0x100716a4]
mov edx, eax
sub edx, 0xdf931252
sub edx, 1
add edx, 0xdf931252
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, 0xee00f3a6
mov ecx, 0x6381698d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov ecx, dword [0x100716a8]
mov eax, dword [0x100716a4]
mov edx, ecx
add edx, 0x1979ef5c
sub edx, 1
sub edx, 0x1979ef5c
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, 0xae1ea4d
mov ecx, 0x5655670a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c]
mov ecx, dword [ebp - 0x40]
sub ecx, 0xe60469ff
add ecx, eax
add ecx, 0xe60469ff
mov eax, dword [ebp - 0x78]
mov dword [eax], ecx
mov eax, dword [0x100716a8]
mov ecx, dword [0x100716a4]
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, 0xef34c3b8
mov ecx, 0x4565c11f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov eax, dword [0x100716a8]
mov ecx, dword [0x100716a4]
mov edx, eax
sub edx, 0xb8961c59
sub edx, 1
add edx, 0xb8961c59
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, 0x3156c559
mov ecx, 0x14ae5e99
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov eax, dword [ebp - 0x74]
mov word [eax], 0
mov dword [ebp - 0xa8], 0x364e4727
jmp 0x10004e59
mov eax, dword [0x100716a8]
mov ecx, dword [0x100716a4]
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, 0x59ea34ab
mov ecx, 0xe70b60dd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov dword [ebp - 0xa8], 0xc9af3224
jmp 0x10004e59
mov eax, dword [ebp - 0x2c]
movzx edx, word [eax + 0x10]
mov ecx, dword [ebp - 0x30]
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, edx
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], 0x1001d190
call fcn.10013e40
add esp, 8
mov dword [ebp - 0x28], eax
mov dword [ebp - 0xa8], 0x86273672
jmp 0x10004e59
mov edx, dword [ebp - 0x28]
mov eax, 0xd296eb5e
mov ecx, 0x739e17d0
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov eax, dword [0x100716a8]
mov ecx, dword [0x100716a4]
mov edx, eax
sub edx, 0xdf81fe34
sub edx, 1
add edx, 0xdf81fe34
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, 0x931c0608
mov ecx, 0x70fc3714
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov ecx, dword [0x100716a8]
mov eax, dword [0x100716a4]
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, 0xcdc49da2
mov ecx, 0x269e9494
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov ecx, dword [0x100716a8]
mov eax, dword [0x100716a4]
mov edx, ecx
add edx, 0xe865d938
sub edx, 1
sub edx, 0xe865d938
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, 0xa85df24a
mov ecx, 0x8f224f6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov dword [ebp - 0xa8], 0x6862f2bc
jmp 0x10004e59
mov eax, dword [0x100716a8]
mov ecx, dword [0x100716a4]
mov edx, eax
sub edx, 0xb8459ff6
sub edx, 1
add edx, 0xb8459ff6
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, 0x7faaf477
mov ecx, 0x4e58186d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov eax, dword [ebp - 0x20]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x68]
mov byte [eax], cl
mov eax, dword [0x100716a8]
mov ecx, dword [0x100716a4]
mov edx, eax
sub edx, 0x1ed27185
sub edx, 1
add edx, 0x1ed27185
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, 0x77f09770
mov ecx, 0x9a58dd5e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov dword [ebp - 0xa8], 0x739e17d0
jmp 0x10004e59
mov ecx, dword [0x100716a8]
mov eax, dword [0x100716a4]
mov edx, ecx
add edx, 0xa16218b4
sub edx, 1
sub edx, 0xa16218b4
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, 0xa79f05d6
mov ecx, 0xf3eb15f4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov ecx, dword [0x100716a8]
mov eax, dword [0x100716a4]
mov edx, ecx
sub edx, 0x99106922
sub edx, 1
add edx, 0x99106922
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, 0x55522470
mov ecx, 0xc3ed56b7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov eax, dword [ebp - 0x74]
mov ax, word [eax]
mov word [ebp - 0x1c], ax
mov eax, dword [0x100716a8]
mov ecx, dword [0x100716a4]
mov edx, eax
sub edx, 0xab06cf26
sub edx, 1
add edx, 0xab06cf26
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, 0x55522470
mov ecx, 0xc0b87a6b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov dword [ebp - 0xa8], 0x1cafc1ea
jmp 0x10004e59
mov ax, word [ebp - 0x1c]
sub ax, 0xb15
add ax, 1
add ax, 0xb15
mov word [ebp - 0x1a], ax
mov eax, dword [0x100716a8]
mov ecx, dword [0x100716a4]
mov edx, eax
sub edx, 0xc10233a5
sub edx, 1
add edx, 0xc10233a5
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, 0x2841caf3
mov ecx, 0x48e0a334
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov eax, dword [0x100716a8]
mov ecx, dword [0x100716a4]
mov edx, eax
sub edx, 0x4a3828a
sub edx, 1
add edx, 0x4a3828a
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, 0x3c7b9bb9
mov ecx, 0x73e8a36f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov dword [ebp - 0xa8], 0x364e4727
jmp 0x10004e59
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0xa8], 0x16895a64
jmp 0x10004e59
mov eax, dword [ebp - 0x98]
mov ecx, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x58]
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 [0x100716a8]
mov ecx, dword [0x100716a4]
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, 0x4df945a9
mov ecx, 0x5044cd5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov dword [ebp - 0xa8], 0x7b52574b
jmp 0x10004e59
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 [0x100716a8]
mov ecx, dword [0x100716a4]
mov edx, eax
sub edx, 0x4753fb4c
sub edx, 1
add edx, 0x4753fb4c
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, 0x88e7d775
mov ecx, 0xe07bd7e3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x10004e59
mov dword [ebp - 0xa8], 0x9d28fdf8
jmp 0x10004e59
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0xa8], 0xd1733713
jmp 0x10004e59
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 esi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
sub edx, eax
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]
mov dword [ebp - 0xa8], 0x269e9494
jmp 0x10004e59
mov eax, dword [ebp - 0x24]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x68]
mov byte [eax], cl
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, 0x94fae1ea
add edx, eax
add edx, 0x94fae1ea
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub ecx, 0xbe89098
add ecx, eax
add ecx, 0xbe89098
mov eax, dword [ebp - 0x70]
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.10013010
add esp, 0xc
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov eax, dword [ebp - 0x90]
mov esi, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add esi, 0xa33cc727
add esi, eax
sub esi, 0xa33cc727
mov eax, dword [ebp - 0x6c]
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]
mov dword [ebp - 0xa8], 0x6089d3da
jmp 0x10004e59
mov dword [ebp - 0xa8], 0x73d31030
jmp 0x10004e59
mov dword [ebp - 0xa8], 0x686d982a
jmp 0x10004e59
mov eax, dword [ebp - 0x50]
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 - 0xa8], 0x7e19e5d8
jmp 0x10004e59
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x4c]
mov dword [eax], ecx
mov dword [ebp - 0xa8], 0xbabcec57
jmp 0x10004e59
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0xa8], 0x64e59e9f
jmp 0x10004e59
mov eax, dword [ebp - 0x44]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa8], 0xe51c06ad
jmp 0x10004e59
mov dword [ebp - 0xa8], 0x58547f48
jmp 0x10004e59
mov dword [ebp - 0xa8], 0xb3571e5d
jmp 0x10004e59
mov eax, dword [ebp - 0x78]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0xa8], 0x1aafc651
jmp 0x10004e59
mov dword [ebp - 0xa8], 0x70fc3714
jmp 0x10004e59
mov dword [ebp - 0xa8], 0x8f224f6
jmp 0x10004e59
mov dword [ebp - 0xa8], 0xa8f6f743
jmp 0x10004e59
mov eax, dword [ebp - 0x18]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0xa8], 0x6d73a6aa
jmp 0x10004e59
mov dword [ebp - 0xa8], 0xe9a01c80
jmp 0x10004e59
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 dword [ebp - 0xa8], 0xd5aac800
jmp 0x100015a8