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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x1a4
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1a8], eax
mov eax, dword [0x10092680]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x1a4], 0xc3df803c
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x1ac], eax
sub eax, 0x84761a3e
je 0x100095b5
jmp 0x10008414
mov eax, dword [ebp - 0x1ac]
sub eax, 0x928db517
je 0x10009069
jmp 0x1000842a
mov eax, dword [ebp - 0x1ac]
sub eax, 0x929875f5
je 0x10008f2b
jmp 0x10008440
mov eax, dword [ebp - 0x1ac]
sub eax, 0x98cff9b9
je 0x100091a2
jmp 0x10008456
mov eax, dword [ebp - 0x1ac]
sub eax, 0x9f1dbaeb
je 0x10009885
jmp 0x1000846c
mov eax, dword [ebp - 0x1ac]
sub eax, 0xa2458ef6
je 0x10009466
jmp 0x10008482
mov eax, dword [ebp - 0x1ac]
sub eax, 0xa79f357a
je 0x100098f3
jmp 0x10008498
mov eax, dword [ebp - 0x1ac]
sub eax, 0xa8702abb
je 0x1000956c
jmp 0x100084ae
mov eax, dword [ebp - 0x1ac]
sub eax, 0xace0708a
je 0x100098d5
jmp 0x100084c4
mov eax, dword [ebp - 0x1ac]
sub eax, 0xb46fae72
je 0x10008b79
jmp 0x100084da
mov eax, dword [ebp - 0x1ac]
sub eax, 0xb668da0f
je 0x10008cbb
jmp 0x100084f0
mov eax, dword [ebp - 0x1ac]
sub eax, 0xbc3b4717
je 0x10008e6c
jmp 0x10008506
mov eax, dword [ebp - 0x1ac]
sub eax, 0xbc997c2a
je 0x100098c6
jmp 0x1000851c
mov eax, dword [ebp - 0x1ac]
sub eax, 0xbcfb052f
je 0x10009806
jmp 0x10008532
mov eax, dword [ebp - 0x1ac]
sub eax, 0xbdccb63c
je 0x10008a5d
jmp 0x10008548
mov eax, dword [ebp - 0x1ac]
sub eax, 0xc3df803c
je 0x100089af
jmp 0x1000855e
mov eax, dword [ebp - 0x1ac]
sub eax, 0xc5c1520e
je 0x10008af6
jmp 0x10008574
mov eax, dword [ebp - 0x1ac]
sub eax, 0xc7a2519c
je 0x10008a4e
jmp 0x1000858a
mov eax, dword [ebp - 0x1ac]
sub eax, 0xcb0485c0
je 0x10008d29
jmp 0x100085a0
mov eax, dword [ebp - 0x1ac]
sub eax, 0xcbebba03
je 0x1000976f
jmp 0x100085b6
mov eax, dword [ebp - 0x1ac]
sub eax, 0xcf122583
je 0x100097bd
jmp 0x100085cc
mov eax, dword [ebp - 0x1ac]
sub eax, 0xd46068ee
je 0x10008aa5
jmp 0x100085e2
mov eax, dword [ebp - 0x1ac]
sub eax, 0xd582e688
je 0x10008e4b
jmp 0x100085f8
mov eax, dword [ebp - 0x1ac]
sub eax, 0xd5a10eb7
je 0x10009098
jmp 0x1000860e
mov eax, dword [ebp - 0x1ac]
sub eax, 0xd708ce41
je 0x10008da3
jmp 0x10008624
mov eax, dword [ebp - 0x1ac]
sub eax, 0xe7ee729c
je 0x100099dd
jmp 0x1000863a
mov eax, dword [ebp - 0x1ac]
sub eax, 0xe99fdb5e
je 0x10008e30
jmp 0x10008650
mov eax, dword [ebp - 0x1ac]
sub eax, 0xebbbf4c3
je 0x100090e1
jmp 0x10008666
mov eax, dword [ebp - 0x1ac]
sub eax, 0xee7883b5
je 0x1000917a
jmp 0x1000867c
mov eax, dword [ebp - 0x1ac]
sub eax, 0xf943669f
je 0x10008a17
jmp 0x10008692
mov eax, dword [ebp - 0x1ac]
sub eax, 0xfb28c83a
je 0x10009716
jmp 0x100086a8
mov eax, dword [ebp - 0x1ac]
sub eax, 0x3628654
je 0x1000963a
jmp 0x100086be
mov eax, dword [ebp - 0x1ac]
sub eax, 0x39cd5d8
je 0x100098e4
jmp 0x100086d4
mov eax, dword [ebp - 0x1ac]
sub eax, 0xb54baf9
je 0x1000997b
jmp 0x100086ea
mov eax, dword [ebp - 0x1ac]
sub eax, 0x10beea8c
je 0x10009269
jmp 0x10008700
mov eax, dword [ebp - 0x1ac]
sub eax, 0x1561a2b2
je 0x10008e0f
jmp 0x10008716
mov eax, dword [ebp - 0x1ac]
sub eax, 0x181c3341
je 0x1000928a
jmp 0x1000872c
mov eax, dword [ebp - 0x1ac]
sub eax, 0x1ba14432
je 0x10008f8b
jmp 0x10008742
mov eax, dword [ebp - 0x1ac]
sub eax, 0x1caf37fb
je 0x100092dd
jmp 0x10008758
mov eax, dword [ebp - 0x1ac]
sub eax, 0x1cfabbbe
je 0x100096b0
jmp 0x1000876e
mov eax, dword [ebp - 0x1ac]
sub eax, 0x1ed82c06
je 0x1000962b
jmp 0x10008784
mov eax, dword [ebp - 0x1ac]
sub eax, 0x1f629e52
je 0x100092a5
jmp 0x1000879a
mov eax, dword [ebp - 0x1ac]
sub eax, 0x26c98cc1
je 0x10009874
jmp 0x100087b0
mov eax, dword [ebp - 0x1ac]
sub eax, 0x2943e728
je 0x10009948
jmp 0x100087c6
mov eax, dword [ebp - 0x1ac]
sub eax, 0x2a319916
je 0x10008f3a
jmp 0x100087dc
mov eax, dword [ebp - 0x1ac]
sub eax, 0x2fed6573
je 0x10009707
jmp 0x100087f2
mov eax, dword [ebp - 0x1ac]
sub eax, 0x30bd50c8
je 0x100093e2
jmp 0x10008808
mov eax, dword [ebp - 0x1ac]
sub eax, 0x30ed17cc
je 0x10008db2
jmp 0x1000881e
mov eax, dword [ebp - 0x1ac]
sub eax, 0x3d756099
je 0x10008b88
jmp 0x10008834
mov eax, dword [ebp - 0x1ac]
sub eax, 0x439c9df4
je 0x100093c1
jmp 0x1000884a
mov eax, dword [ebp - 0x1ac]
sub eax, 0x473cadc0
je 0x10008c3e
jmp 0x10008860
mov eax, dword [ebp - 0x1ac]
sub eax, 0x4983a03c
je 0x1000914e
jmp 0x10008876
mov eax, dword [ebp - 0x1ac]
sub eax, 0x4dd9f8b5
je 0x1000905a
jmp 0x1000888c
mov eax, dword [ebp - 0x1ac]
sub eax, 0x51f584e2
je 0x100099ec
jmp 0x100088a2
mov eax, dword [ebp - 0x1ac]
sub eax, 0x57ec25ad
je 0x10008bf5
jmp 0x100088b8
mov eax, dword [ebp - 0x1ac]
sub eax, 0x59bd2fd8
je 0x1000973f
jmp 0x100088ce
mov eax, dword [ebp - 0x1ac]
sub eax, 0x5b6417a9
je 0x10009326
jmp 0x100088e4
mov eax, dword [ebp - 0x1ac]
sub eax, 0x5d5d7338
je 0x1000974e
jmp 0x100088fa
mov eax, dword [ebp - 0x1ac]
sub eax, 0x6052617b
je 0x10009218
jmp 0x10008910
mov eax, dword [ebp - 0x1ac]
sub eax, 0x68d31f12
je 0x1000978a
jmp 0x10008926
mov eax, dword [ebp - 0x1ac]
sub eax, 0x6a0b80a7
je 0x10008cac
jmp 0x1000893c
mov eax, dword [ebp - 0x1ac]
sub eax, 0x6b5c9897
je 0x10009505
jmp 0x10008952
mov eax, dword [ebp - 0x1ac]
sub eax, 0x6e40170b
je 0x100099ce
jmp 0x10008968
mov eax, dword [ebp - 0x1ac]
sub eax, 0x7b09daac
je 0x1000913f
jmp 0x1000897e
mov eax, dword [ebp - 0x1ac]
sub eax, 0x7bf45f73
je 0x1000996c
mov eax, dword [ebp - 0x1a8]
push eax
mov ecx, esp
mov dword [ebp - 0x178], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x174], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x170], ecx
mov dword [ebp - 0x17c], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x180], eax
lea eax, [ebp - 0x11c]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.100241b0
add esp, 0xc
mov dword [ebp - 0x1a4], 0xf943669f
jmp 0x100099f6
mov eax, dword [ebp - 0x17c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x184], eax
mov eax, 0xc7a2519c
mov ecx, 0xbdccb63c
cmp dword [ebp - 0x184], 0
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov dword [ebp - 0x1a4], 0xcf122583
jmp 0x100099f6
mov ecx, dword [ebp - 0x184]
mov edx, dword [ebp - 0x180]
lea eax, [ebp - 0x11c]
sub esp, 0x10
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xc
call sub.KERNEL32.dll_K32GetModuleInformation
lea eax, [ebp - 0x11c]
mov dword [ebp - 0x16c], eax
mov dword [ebp - 0x1a4], 0xd46068ee
jmp 0x100099f6
mov eax, dword [0x10093b54]
mov ecx, dword [0x10093b50]
mov edx, eax
sub edx, 0xbf99127c
sub edx, 1
add edx, 0xbf99127c
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, 0x9f1dbaeb
mov ecx, 0xc5c1520e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
mov dword [ebp - 0x188], eax
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0x184]
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 [0x10093b54]
mov ecx, dword [0x10093b50]
mov edx, eax
sub edx, 0x6121e6bf
sub edx, 1
add edx, 0x6121e6bf
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, 0x9f1dbaeb
mov ecx, 0xb46fae72
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov dword [ebp - 0x1a4], 0x3d756099
jmp 0x100099f6
lea eax, [ebp - 0x110]
xor ecx, ecx
sub esp, 0x1c
mov dword [esp], eax
mov dword [esp + 4], 0x80000000
mov dword [esp + 8], 1
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 3
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x18c], eax
mov edx, 0xffffffff
mov eax, 0xb668da0f
mov ecx, 0x57ec25ad
cmp dword [ebp - 0x18c], edx
cmove eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov eax, dword [0x10093b54]
mov ecx, dword [0x10093b50]
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, 0xbc997c2a
mov ecx, 0x473cadc0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov ecx, dword [0x10093b54]
mov eax, dword [0x10093b50]
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, 0xbc997c2a
mov ecx, 0x6a0b80a7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov dword [ebp - 0x1a4], 0xcf122583
jmp 0x100099f6
mov ecx, dword [0x10093b54]
mov eax, dword [0x10093b50]
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, 0xace0708a
mov ecx, 0xcb0485c0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x168], eax
mov ecx, dword [0x10093b54]
mov eax, dword [0x10093b50]
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, 0xace0708a
mov ecx, 0xd708ce41
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov dword [ebp - 0x1a4], 0x30ed17cc
jmp 0x100099f6
mov eax, dword [ebp - 0x168]
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 - 0x190], eax
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x1a4], 0x1561a2b2
jmp 0x100099f6
mov edx, dword [ebp - 0x164]
mov eax, 0xe99fdb5e
mov ecx, 0x2a319916
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x1a4], 0xd582e688
jmp 0x100099f6
mov eax, dword [ebp - 0x160]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a4], 0xbc3b4717
jmp 0x100099f6
mov eax, dword [0x10093b54]
mov ecx, dword [0x10093b50]
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, 0x39cd5d8
mov ecx, 0x7f815a7a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov dword [ebp - 0x1a4], 0xcf122583
jmp 0x100099f6
mov eax, dword [0x10093b54]
mov ecx, dword [0x10093b50]
mov edx, eax
add edx, 0x64a237bf
sub edx, 1
sub edx, 0x64a237bf
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, 0xa79f357a
mov ecx, 0x1ba14432
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov eax, dword [ebp - 0x190]
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 dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x198], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x15c], eax
mov eax, dword [ebp - 0x198]
mov eax, dword [eax + 0x3c]
mov dword [ebp - 0x158], eax
mov ecx, dword [0x10093b54]
mov eax, dword [0x10093b50]
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, 0xa79f357a
mov ecx, 0x4dd9f8b5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov dword [ebp - 0x1a4], 0x928db517
jmp 0x100099f6
mov eax, dword [ebp - 0x15c]
mov edx, dword [ebp - 0x158]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x1a4], 0xd5a10eb7
jmp 0x100099f6
mov eax, dword [0x10093b54]
mov ecx, dword [0x10093b50]
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, 0x2943e728
mov ecx, 0xebbbf4c3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x19c], eax
mov word [ebp - 0x19e], 0
mov eax, dword [0x10093b54]
mov ecx, dword [0x10093b50]
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, 0x2943e728
mov ecx, 0x7b09daac
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov dword [ebp - 0x1a4], 0x4983a03c
jmp 0x100099f6
movzx eax, word [ebp - 0x19e]
mov dword [ebp - 0x150], eax
mov eax, dword [ebp - 0x19c]
movzx eax, word [eax + 6]
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x1a4], 0xee7883b5
jmp 0x100099f6
mov eax, dword [ebp - 0x150]
mov ecx, dword [ebp - 0x14c]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x145], al
mov dword [ebp - 0x1a4], 0x98cff9b9
jmp 0x100099f6
mov ecx, dword [0x10093b54]
mov eax, dword [0x10093b50]
mov edx, ecx
add edx, 0xfb721f20
sub edx, 1
sub edx, 0xfb721f20
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, 0x7bf45f73
mov ecx, 0x6052617b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov eax, dword [0x10093b54]
mov ecx, dword [0x10093b50]
mov edx, eax
sub edx, 0x417d820e
sub edx, 1
add edx, 0x417d820e
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, 0x7bf45f73
mov ecx, 0x10beea8c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov dl, byte [ebp - 0x145]
mov eax, 0x5d5d7338
mov ecx, 0x181c3341
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x1a4], 0x1f629e52
jmp 0x100099f6
mov eax, dword [ebp - 0x144]
xor ecx, ecx
sub ecx, 0x18
sub eax, ecx
mov ecx, dword [ebp - 0x19c]
movzx ecx, word [ecx + 0x14]
add eax, 0x556862c5
add eax, ecx
sub eax, 0x556862c5
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x1a4], 0x1caf37fb
jmp 0x100099f6
mov eax, dword [0x10093b54]
mov ecx, dword [0x10093b50]
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, 0xb54baf9
mov ecx, 0x5b6417a9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov ecx, dword [ebp - 0x140]
movzx eax, word [ebp - 0x19e]
imul eax, eax, 0x28
sub ecx, 0xf49fbc66
add ecx, eax
add ecx, 0xf49fbc66
mov eax, dword [ebp - 0x178]
mov dword [eax], ecx
mov eax, dword [ebp - 0x178]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10031910
call fcn.10027b10
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x139], al
mov eax, dword [0x10093b54]
mov ecx, dword [0x10093b50]
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, 0xb54baf9
mov ecx, 0x439c9df4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov dl, byte [ebp - 0x139]
mov eax, 0x30bd50c8
mov ecx, 0xa8702abb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov eax, dword [ebp - 0x174]
mov dword [eax], 0
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x188]
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub edx, 0xd2db58c0
add edx, eax
add edx, 0xd2db58c0
mov eax, dword [ebp - 0x174]
sub esp, 0x10
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x40
mov dword [esp + 0xc], eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x170]
mov byte [eax], cl
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x1a4], 0xa2458ef6
jmp 0x100099f6
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov ecx, dword [eax + 0xc]
mov edx, dword [ebp - 0x138]
xor eax, eax
sub eax, ecx
sub edx, eax
mov ecx, dword [ebp - 0x194]
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub ecx, 0x9f142e1d
add ecx, eax
add ecx, 0x9f142e1d
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov eax, dword [eax + 8]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.10024310
add esp, 0xc
mov eax, dword [ebp - 0x174]
mov eax, dword [eax]
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x1a4], 0x6b5c9897
jmp 0x100099f6
mov eax, dword [ebp - 0x128]
mov eax, dword [eax + 0xc]
mov esi, dword [ebp - 0x12c]
sub esi, 0xe89399dc
add esi, eax
add esi, 0xe89399dc
mov eax, dword [ebp - 0x174]
mov ecx, dword [ebp - 0x134]
mov edx, dword [ebp - 0x130]
sub esp, 0x10
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x170]
mov byte [eax], cl
mov dword [ebp - 0x1a4], 0xa8702abb
jmp 0x100099f6
mov eax, dword [0x10093b54]
mov ecx, dword [0x10093b50]
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, 0x6e40170b
mov ecx, 0x84761a3e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov ecx, dword [0x10093b54]
mov eax, dword [0x10093b50]
mov edx, ecx
sub edx, 0xd4868384
sub edx, 1
add edx, 0xd4868384
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, 0x6e40170b
mov ecx, 0x1ed82c06
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov dword [ebp - 0x1a4], 0x3628654
jmp 0x100099f6
mov ecx, dword [0x10093b54]
mov eax, dword [0x10093b50]
mov edx, ecx
sub edx, 0x4cf227ae
sub edx, 1
add edx, 0x4cf227ae
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, 0xe7ee729c
mov ecx, 0x1cfabbbe
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov ax, word [ebp - 0x19e]
mov word [ebp - 0x122], ax
mov eax, dword [0x10093b54]
mov ecx, dword [0x10093b50]
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, 0xe7ee729c
mov ecx, 0x2fed6573
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov dword [ebp - 0x1a4], 0xfb28c83a
jmp 0x100099f6
mov ax, word [ebp - 0x122]
add ax, 0xde37
add ax, 1
sub ax, 0xde37
mov word [ebp - 0x19e], ax
mov dword [ebp - 0x1a4], 0x59bd2fd8
jmp 0x100099f6
mov dword [ebp - 0x1a4], 0x4983a03c
jmp 0x100099f6
mov eax, dword [ebp - 0x18c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a4], 0xcbebba03
jmp 0x100099f6
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x1a4], 0x68d31f12
jmp 0x100099f6
mov eax, dword [ebp - 0x120]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x180]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a4], 0xcf122583
jmp 0x100099f6
mov eax, dword [0x10093b54]
mov ecx, dword [0x10093b50]
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, 0x51f584e2
mov ecx, 0xbcfb052f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov ecx, dword [0x10093b54]
mov eax, dword [0x10093b50]
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, 0x51f584e2
mov ecx, 0x26c98cc1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x100099f6
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.10023410
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
mov dword [ebp - 0x188], eax
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0x184]
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 dword [ebp - 0x1a4], 0xc5c1520e
jmp 0x100099f6
mov dword [ebp - 0x1a4], 0x473cadc0
jmp 0x100099f6
mov dword [ebp - 0x1a4], 0xcb0485c0
jmp 0x100099f6
mov dword [ebp - 0x1a4], 0x7f815a7a
jmp 0x100099f6
mov eax, dword [ebp - 0x190]
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 dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x198], eax
mov dword [ebp - 0x1a4], 0x1ba14432
jmp 0x100099f6
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x19c], eax
mov word [ebp - 0x19e], 0
mov dword [ebp - 0x1a4], 0xebbbf4c3
jmp 0x100099f6
mov ecx, dword [ebp - 0x140]
movzx eax, word [ebp - 0x19e]
imul eax, eax, 0x28
add ecx, 0x86181b65
add ecx, eax
sub ecx, 0x86181b65
mov eax, dword [ebp - 0x178]
mov dword [eax], ecx
mov eax, dword [ebp - 0x178]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10031910
call fcn.10027b10
add esp, 8
mov dword [ebp - 0x1a4], 0x5b6417a9
jmp 0x100099f6
mov dword [ebp - 0x1a4], 0x84761a3e
jmp 0x100099f6
mov dword [ebp - 0x1a4], 0x1cfabbbe
jmp 0x100099f6
mov dword [ebp - 0x1a4], 0xbcfb052f
jmp 0x100083f8