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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0xa4
mov eax, dword [ebp + 8]
mov dword [ebp - 0xa8], eax
mov eax, dword [0x10067200]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov ecx, dword [0x10068540]
mov eax, dword [0x1006853c]
mov edx, ecx
add edx, 0x6d401af7
sub edx, 1
sub edx, 0x6d401af7
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x9e], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x9d], al
mov dword [ebp - 0xa4], 0x2c263b63
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0xac], eax
sub eax, 0x85f2a2d7
je 0x100019af
jmp 0x10001133
mov eax, dword [ebp - 0xac]
sub eax, 0x8688105a
je 0x100027eb
jmp 0x10001149
mov eax, dword [ebp - 0xac]
sub eax, 0x87ad2394
je 0x10002563
jmp 0x1000115f
mov eax, dword [ebp - 0xac]
sub eax, 0x87e3722b
je 0x100023a4
jmp 0x10001175
mov eax, dword [ebp - 0xac]
sub eax, 0x87ed8fb7
je 0x1000182c
jmp 0x1000118b
mov eax, dword [ebp - 0xac]
sub eax, 0x88953c30
je 0x100025cd
jmp 0x100011a1
mov eax, dword [ebp - 0xac]
sub eax, 0x8d9ca31b
je 0x10001e1b
jmp 0x100011b7
mov eax, dword [ebp - 0xac]
sub eax, 0x9004c69b
je 0x100028e0
jmp 0x100011cd
mov eax, dword [ebp - 0xac]
sub eax, 0x97cb0436
je 0x10001d3e
jmp 0x100011e3
mov eax, dword [ebp - 0xac]
sub eax, 0x9ba5bb38
je 0x10002754
jmp 0x100011f9
mov eax, dword [ebp - 0xac]
sub eax, 0xa0081b0f
je 0x10002774
jmp 0x1000120f
mov eax, dword [ebp - 0xac]
sub eax, 0xaa5e2e68
je 0x10001890
jmp 0x10001225
mov eax, dword [ebp - 0xac]
sub eax, 0xad801430
je 0x1000211f
jmp 0x1000123b
mov eax, dword [ebp - 0xac]
sub eax, 0xb0f196dc
je 0x100025be
jmp 0x10001251
mov eax, dword [ebp - 0xac]
sub eax, 0xb19717aa
je 0x100023e6
jmp 0x10001267
mov eax, dword [ebp - 0xac]
sub eax, 0xb51caf86
je 0x100024f5
jmp 0x1000127d
mov eax, dword [ebp - 0xac]
sub eax, 0xb917e9c9
je 0x1000248a
jmp 0x10001293
mov eax, dword [ebp - 0xac]
sub eax, 0xbaca56f8
je 0x10001f93
jmp 0x100012a9
mov eax, dword [ebp - 0xac]
sub eax, 0xbb27a55a
je 0x10001aea
jmp 0x100012bf
mov eax, dword [ebp - 0xac]
sub eax, 0xcaf5e6b8
je 0x10002214
jmp 0x100012d5
mov eax, dword [ebp - 0xac]
sub eax, 0xd5100f1e
je 0x10001bfd
jmp 0x100012eb
mov eax, dword [ebp - 0xac]
sub eax, 0xd57f7e78
je 0x10002807
jmp 0x10001301
mov eax, dword [ebp - 0xac]
sub eax, 0xd637a0c7
je 0x10001991
jmp 0x10001317
mov eax, dword [ebp - 0xac]
sub eax, 0xd701c416
je 0x100021af
jmp 0x1000132d
mov eax, dword [ebp - 0xac]
sub eax, 0xd7b6944d
je 0x10002386
jmp 0x10001343
mov eax, dword [ebp - 0xac]
sub eax, 0xda944022
je 0x10002745
jmp 0x10001359
mov eax, dword [ebp - 0xac]
sub eax, 0xdb647f1b
je 0x10002048
jmp 0x1000136f
mov eax, dword [ebp - 0xac]
sub eax, 0xde652ef7
je 0x10002139
jmp 0x10001385
mov eax, dword [ebp - 0xac]
sub eax, 0xe91a621d
je 0x10001b83
jmp 0x1000139b
mov eax, dword [ebp - 0xac]
sub eax, 0xedb406c4
je 0x1000177a
jmp 0x100013b1
mov eax, dword [ebp - 0xac]
sub eax, 0xedbe01cd
je 0x10002859
jmp 0x100013c7
mov eax, dword [ebp - 0xac]
sub eax, 0x12db2f6
je 0x100022b9
jmp 0x100013dd
mov eax, dword [ebp - 0xac]
sub eax, 0x472d091
je 0x10001ed8
jmp 0x100013f3
mov eax, dword [ebp - 0xac]
sub eax, 0x6039fb1
je 0x10002232
jmp 0x10001409
mov eax, dword [ebp - 0xac]
sub eax, 0x693aa91
je 0x100028b9
jmp 0x1000141f
mov eax, dword [ebp - 0xac]
sub eax, 0x8be4773
je 0x10001847
jmp 0x10001435
mov eax, dword [ebp - 0xac]
sub eax, 0x93873a5
je 0x10001cd0
jmp 0x1000144b
mov eax, dword [ebp - 0xac]
sub eax, 0x93c16fe
je 0x100026c0
jmp 0x10001461
mov eax, dword [ebp - 0xac]
sub eax, 0xa4680c5
je 0x100019be
jmp 0x10001477
mov eax, dword [ebp - 0xac]
sub eax, 0xd0eb9b6
je 0x10002765
jmp 0x1000148d
mov eax, dword [ebp - 0xac]
sub eax, 0x11fb3571
je 0x100028f2
jmp 0x100014a3
mov eax, dword [ebp - 0xac]
sub eax, 0x12d0da2e
je 0x10002868
jmp 0x100014b9
mov eax, dword [ebp - 0xac]
sub eax, 0x181e1d50
je 0x10001e9c
jmp 0x100014cf
mov eax, dword [ebp - 0xac]
sub eax, 0x1cf7dedd
je 0x100028a7
jmp 0x100014e5
mov eax, dword [ebp - 0xac]
sub eax, 0x21a1af35
je 0x10002629
jmp 0x100014fb
mov eax, dword [ebp - 0xac]
sub eax, 0x22d89236
je 0x10001b92
jmp 0x10001511
mov eax, dword [ebp - 0xac]
sub eax, 0x26cc4ac4
je 0x100028ce
jmp 0x10001527
mov eax, dword [ebp - 0xac]
sub eax, 0x2a4ca9d5
je 0x10001cc1
jmp 0x1000153d
mov eax, dword [ebp - 0xac]
sub eax, 0x2b5351ba
je 0x100024e6
jmp 0x10001553
mov eax, dword [ebp - 0xac]
sub eax, 0x2c263b63
je 0x10001726
jmp 0x10001569
mov eax, dword [ebp - 0xac]
sub eax, 0x2df1077c
je 0x10001db4
jmp 0x1000157f
mov eax, dword [ebp - 0xac]
sub eax, 0x32d1b2cc
je 0x10002004
jmp 0x10001595
mov eax, dword [ebp - 0xac]
sub eax, 0x3553b4ee
je 0x1000181d
jmp 0x100015ab
mov eax, dword [ebp - 0xac]
sub eax, 0x37d37c7f
je 0x1000232f
jmp 0x100015c1
mov eax, dword [ebp - 0xac]
sub eax, 0x39b0ef80
je 0x10002091
jmp 0x100015d7
mov eax, dword [ebp - 0xac]
sub eax, 0x41256a8b
je 0x10001bac
jmp 0x100015ed
mov eax, dword [ebp - 0xac]
sub eax, 0x41268752
je 0x10001eab
jmp 0x10001603
mov eax, dword [ebp - 0xac]
sub eax, 0x44ce838f
je 0x10001adb
jmp 0x10001619
mov eax, dword [ebp - 0xac]
sub eax, 0x46366c13
je 0x10001a7d
jmp 0x1000162f
mov eax, dword [ebp - 0xac]
sub eax, 0x47be2c97
je 0x10001a07
jmp 0x10001645
mov eax, dword [ebp - 0xac]
sub eax, 0x4ac49b79
je 0x1000287d
jmp 0x1000165b
mov eax, dword [ebp - 0xac]
sub eax, 0x4bf7b315
je 0x10002110
jmp 0x10001671
mov eax, dword [ebp - 0xac]
sub eax, 0x5957a179
je 0x10001dd2
jmp 0x10001687
mov eax, dword [ebp - 0xac]
sub eax, 0x5fb06d42
je 0x100025fe
jmp 0x1000169d
mov eax, dword [ebp - 0xac]
sub eax, 0x60024bff
je 0x10002264
mov bl, byte [ebp - 0x9e]
mov dh, byte [ebp - 0x9d]
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, 0xd0eb9b6
mov ecx, 0xedb406c4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
push eax
mov eax, esp
mov dword [ebp - 0x9c], eax
push eax
mov eax, esp
mov dword [ebp - 0x98], eax
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x94], eax
push eax
mov eax, esp
mov dword [ebp - 0x90], eax
push eax
mov eax, esp
mov dword [ebp - 0x8c], eax
sub esp, 0x104
mov eax, esp
mov dword [ebp - 0x88], eax
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 eax, dword [0x10068540]
mov ecx, dword [0x1006853c]
mov edx, eax
add edx, 0xd2136ee0
sub edx, 1
sub edx, 0xd2136ee0
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, 0xd0eb9b6
mov ecx, 0x3553b4ee
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov dword [ebp - 0xa4], 0x87ed8fb7
jmp 0x1000290b
push eax
mov eax, esp
mov dword [ebp - 0x78], eax
push eax
mov eax, esp
mov dword [ebp - 0x74], eax
mov dword [ebp - 0xa4], 0x8be4773
jmp 0x1000290b
mov eax, dword [0x10068540]
mov ecx, dword [0x1006853c]
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, 0xa0081b0f
mov ecx, 0xaa5e2e68
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov ecx, dword [ebp - 0xa8]
push eax
mov eax, esp
mov dword [ebp - 0x70], eax
push eax
mov eax, esp
mov dword [ebp - 0x6c], eax
push eax
mov eax, esp
mov dword [ebp - 0x68], eax
push eax
mov eax, esp
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x9c]
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0x98]
mov dword [eax], ecx
mov eax, dword [ebp - 0x94]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.1000c880
add esp, 0xc
mov eax, dword [ebp - 0x9c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, eax
mov eax, dword [ebp - 0x90]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
cmp dword [eax], 0
setne al
and al, 1
mov byte [ebp - 0x5d], al
mov ecx, dword [0x10068540]
mov eax, dword [0x1006853c]
mov edx, ecx
sub edx, 0x58fda548
sub edx, 1
add edx, 0x58fda548
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, 0xa0081b0f
mov ecx, 0xd637a0c7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov dl, byte [ebp - 0x5d]
mov eax, 0x85f2a2d7
mov ecx, 0xa4680c5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov dword [ebp - 0xa4], 0x9ba5bb38
jmp 0x1000290b
mov eax, dword [ebp - 0x90]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x98]
mov edx, dword [eax]
mov eax, dword [ebp - 0x94]
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 - 0x94]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0xa4], 0x47be2c97
jmp 0x1000290b
mov ecx, dword [0x10068540]
mov eax, dword [0x1006853c]
mov edx, ecx
sub edx, 0xaf84d46d
sub edx, 1
add edx, 0xaf84d46d
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, 0x8688105a
mov ecx, 0x46366c13
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov eax, dword [ebp - 0x5c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x8c]
mov dword [eax], ecx
mov eax, dword [0x10068540]
mov ecx, dword [0x1006853c]
mov edx, eax
add edx, 0xce5f42b1
sub edx, 1
sub edx, 0xce5f42b1
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, 0x8688105a
mov ecx, 0x44ce838f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov dword [ebp - 0xa4], 0xbb27a55a
jmp 0x1000290b
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x90]
mov ecx, dword [ecx]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov eax, dword [ebp - 0x88]
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 - 0x84]
mov dword [eax], ecx
mov edx, dword [ebp - 0x84]
mov esi, 0xffffffff
mov eax, 0x22d89236
mov ecx, 0xe91a621d
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov dword [ebp - 0xa4], 0x9ba5bb38
jmp 0x1000290b
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0xa4], 0x41256a8b
jmp 0x1000290b
mov eax, dword [0x10068540]
mov ecx, dword [0x1006853c]
mov edx, eax
add edx, 0x37476bd9
sub edx, 1
sub edx, 0x37476bd9
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, 0xd57f7e78
mov ecx, 0xd5100f1e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov eax, dword [ebp - 0x58]
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 ecx, eax
mov eax, dword [ebp - 0x80]
mov dword [eax], ecx
mov eax, dword [ebp - 0x80]
cmp dword [eax], 0
setne al
and al, 1
mov byte [ebp - 0x51], al
mov ecx, dword [0x10068540]
mov eax, dword [0x1006853c]
mov edx, ecx
sub edx, 0x55a13976
sub edx, 1
add edx, 0x55a13976
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, 0xd57f7e78
mov ecx, 0x2a4ca9d5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov dword [ebp - 0xa4], 0x93873a5
jmp 0x1000290b
mov ecx, dword [0x10068540]
mov eax, dword [0x1006853c]
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, 0xedbe01cd
mov ecx, 0x97cb0436
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov ecx, dword [0x10068540]
mov eax, dword [0x1006853c]
mov edx, ecx
add edx, 0xfbd36713
sub edx, 1
sub edx, 0xfbd36713
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, 0xedbe01cd
mov ecx, 0x2df1077c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov dl, byte [ebp - 0x51]
mov eax, 0x5957a179
mov ecx, 0x472d091
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov eax, dword [0x10068540]
mov ecx, dword [0x1006853c]
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, 0x12d0da2e
mov ecx, 0x8d9ca31b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov dword [ebp - 0x50], eax
mov ecx, dword [0x10068540]
mov eax, dword [0x1006853c]
mov edx, ecx
sub edx, 0x6983cb0f
sub edx, 1
add edx, 0x6983cb0f
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, 0x12d0da2e
mov ecx, 0x181e1d50
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov dword [ebp - 0xa4], 0x41268752
jmp 0x1000290b
mov eax, dword [ebp - 0x50]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa4], 0x7be9e73a
jmp 0x1000290b
mov eax, dword [ebp - 0x80]
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 dword [ebp - 0x4c], eax
mov dword [ebp - 0xa4], 0x649bbbcd
jmp 0x1000290b
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x4c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x8c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x78]
mov dword [eax], ecx
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
mov eax, dword [0x10068540]
mov ecx, dword [0x1006853c]
mov edx, eax
add edx, 0xf0604d06
sub edx, 1
sub edx, 0xf0604d06
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, 0x4ac49b79
mov ecx, 0x32d1b2cc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov dword [ebp - 0xa4], 0x60a2ab01
jmp 0x1000290b
mov eax, dword [0x10068540]
mov ecx, dword [0x1006853c]
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, 0x1cf7dedd
mov ecx, 0x39b0ef80
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov eax, dword [ebp - 0x70]
movzx eax, word [eax]
mov dword [ebp - 0x44], eax
mov ecx, dword [0x10068540]
mov eax, dword [0x1006853c]
mov edx, ecx
add edx, 0x47173327
sub edx, 1
sub edx, 0x47173327
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, 0x1cf7dedd
mov ecx, 0x4bf7b315
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov dword [ebp - 0xa4], 0xad801430
jmp 0x1000290b
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
add eax, 4
mov dword [ebp - 0x40], eax
mov dword [ebp - 0xa4], 0xde652ef7
jmp 0x1000290b
mov ecx, dword [0x10068540]
mov eax, dword [0x1006853c]
mov edx, ecx
add edx, 0xa2b907b2
sub edx, 1
sub edx, 0xa2b907b2
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, 0x693aa91
mov ecx, 0xd701c416
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov eax, dword [ebp - 0x40]
movzx ecx, word [eax + 2]
mov eax, dword [ebp - 0x44]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x39], al
mov eax, dword [0x10068540]
mov ecx, dword [0x1006853c]
mov edx, eax
add edx, 0x7145d263
sub edx, 1
sub edx, 0x7145d263
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, 0x693aa91
mov ecx, 0xcaf5e6b8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov dl, byte [ebp - 0x39]
mov eax, 0x5fb06d42
mov ecx, 0x6039fb1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x18
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
movzx eax, word [eax + 0x14]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0xa4], 0x60024bff
jmp 0x1000290b
mov ecx, dword [0x10068540]
mov eax, dword [0x1006853c]
mov edx, ecx
sub edx, 0x85cb80f6
sub edx, 1
add edx, 0x85cb80f6
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, 0x26cc4ac4
mov ecx, 0x37d37c7f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov eax, dword [ebp - 0x30]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x29], al
mov eax, dword [0x10068540]
mov ecx, dword [0x1006853c]
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, 0x26cc4ac4
mov ecx, 0xd7b6944d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov dl, byte [ebp - 0x29]
mov eax, 0x87e3722b
mov ecx, 0x2b5351ba
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov eax, dword [ebp - 0x68]
mov dword [eax], 0
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x6c]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0xc]
sub eax, 0x672f5029
add eax, ecx
add eax, 0x672f5029
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xa4], 0xb19717aa
jmp 0x1000290b
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x28]
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 - 0x64]
mov byte [eax], cl
mov eax, dword [ebp - 0x8c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov edx, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, edx
add eax, ecx
xor edx, edx
sub edx, eax
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
sub ecx, eax
mov eax, dword [ebp - 0x6c]
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.1000c9e0
add esp, 0xc
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa4], 0xb917e9c9
jmp 0x1000290b
mov eax, dword [ebp - 0x8c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov edx, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, edx
add eax, ecx
xor esi, esi
sub esi, eax
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
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 - 0x64]
mov byte [eax], cl
mov dword [ebp - 0xa4], 0x2b5351ba
jmp 0x1000290b
mov dword [ebp - 0xa4], 0xb51caf86
jmp 0x1000290b
mov ecx, dword [0x10068540]
mov eax, dword [0x1006853c]
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, 0x9004c69b
mov ecx, 0x87ad2394
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov eax, dword [ebp - 0x70]
mov ax, word [eax]
mov word [ebp - 0x16], ax
mov eax, dword [0x10068540]
mov ecx, dword [0x1006853c]
mov edx, eax
sub edx, 0xe94d98ea
sub edx, 1
add edx, 0xe94d98ea
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, 0x9004c69b
mov ecx, 0xb0f196dc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov dword [ebp - 0xa4], 0x88953c30
jmp 0x1000290b
mov cx, word [ebp - 0x16]
xor eax, eax
sub ax, 1
sub cx, ax
mov eax, dword [ebp - 0x70]
mov word [eax], cx
mov dword [ebp - 0xa4], 0x68972905
jmp 0x1000290b
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 - 0x80]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0xa4], 0x21a1af35
jmp 0x1000290b
mov eax, dword [ebp - 0x14]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x98]
mov eax, dword [eax]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xa4], 0x6cd03ac2
jmp 0x1000290b
mov eax, dword [ebp - 0x10]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x10068540]
mov eax, dword [0x1006853c]
mov edx, ecx
add edx, 0x8e56b1a
sub edx, 1
sub edx, 0x8e56b1a
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, 0x11fb3571
mov ecx, 0xda944022
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa4], eax
jmp 0x1000290b
mov dword [ebp - 0xa4], 0x9ba5bb38
jmp 0x1000290b
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.1000bc80
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov dword [ebp - 0xa4], 0xedb406c4
jmp 0x1000290b
mov ecx, dword [ebp - 0xa8]
mov eax, dword [ebp - 0x9c]
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0x98]
mov dword [eax], ecx
mov eax, dword [ebp - 0x94]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.1000c880
add esp, 0xc
mov eax, dword [ebp - 0x9c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, eax
mov eax, dword [ebp - 0x90]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xa4], 0xaa5e2e68
jmp 0x1000290b
mov eax, dword [ebp - 0x5c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x8c]
mov dword [eax], ecx
mov dword [ebp - 0xa4], 0x46366c13
jmp 0x1000290b
mov eax, dword [ebp - 0x58]
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 ecx, eax
mov eax, dword [ebp - 0x80]
mov dword [eax], ecx
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0xa4], 0xd5100f1e
jmp 0x1000290b
mov dword [ebp - 0xa4], 0x97cb0436
jmp 0x1000290b
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0xa4], 0x8d9ca31b
jmp 0x1000290b
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x4c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x8c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x78]
mov dword [eax], ecx
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xa4], 0xbaca56f8
jmp 0x1000290b
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0xa4], 0x39b0ef80
jmp 0x1000290b
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0xa4], 0xd701c416
jmp 0x1000290b
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0xa4], 0x37d37c7f
jmp 0x1000290b
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0xa4], 0x87ad2394
jmp 0x1000290b
mov eax, dword [ebp - 0x10]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa4], 0x93c16fe
jmp 0x10001117