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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x8c
mov eax, dword [ebp + 8]
mov dword [ebp - 0x94], eax
mov eax, dword [0x1006c800]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x90], 0x1a9d0f79
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x98], eax
sub eax, 0x83714812
je 0x10001a16
jmp 0x100010f5
mov eax, dword [ebp - 0x98]
sub eax, 0x83b0d049
je 0x10002480
jmp 0x1000110b
mov eax, dword [ebp - 0x98]
sub eax, 0x8cccdc36
je 0x100025ce
jmp 0x10001121
mov eax, dword [ebp - 0x98]
sub eax, 0x8f37f6ba
je 0x1000243c
jmp 0x10001137
mov eax, dword [ebp - 0x98]
sub eax, 0x9200c712
je 0x10002030
jmp 0x1000114d
mov eax, dword [ebp - 0x98]
sub eax, 0x95a9fd30
je 0x1000260b
jmp 0x10001163
mov eax, dword [ebp - 0x98]
sub eax, 0x991c59bb
je 0x10001be2
jmp 0x10001179
mov eax, dword [ebp - 0x98]
sub eax, 0x9bcd577d
je 0x10001e3e
jmp 0x1000118f
mov eax, dword [ebp - 0x98]
sub eax, 0x9c318a30
je 0x10001b1c
jmp 0x100011a5
mov eax, dword [ebp - 0x98]
sub eax, 0x9d2c93cb
je 0x10001e2f
jmp 0x100011bb
mov eax, dword [ebp - 0x98]
sub eax, 0xa4533ab0
je 0x100025b9
jmp 0x100011d1
mov eax, dword [ebp - 0x98]
sub eax, 0xb231727b
je 0x10001bf9
jmp 0x100011e7
mov eax, dword [ebp - 0x98]
sub eax, 0xb77f78d9
je 0x10001a07
jmp 0x100011fd
mov eax, dword [ebp - 0x98]
sub eax, 0xba44d4cf
je 0x1000179c
jmp 0x10001213
mov eax, dword [ebp - 0x98]
sub eax, 0xbb57ad54
je 0x1000241c
jmp 0x10001229
mov eax, dword [ebp - 0x98]
sub eax, 0xc0850e14
je 0x1000218a
jmp 0x1000123f
mov eax, dword [ebp - 0x98]
sub eax, 0xc912947b
je 0x10001da6
jmp 0x10001255
mov eax, dword [ebp - 0x98]
sub eax, 0xc95d9772
je 0x10001c17
jmp 0x1000126b
mov eax, dword [ebp - 0x98]
sub eax, 0xca10435d
je 0x10001ee4
jmp 0x10001281
mov eax, dword [ebp - 0x98]
sub eax, 0xcb4d7364
je 0x100025e3
jmp 0x10001297
mov eax, dword [ebp - 0x98]
sub eax, 0xce695cff
je 0x10001cce
jmp 0x100012ad
mov eax, dword [ebp - 0x98]
sub eax, 0xd43dc5d5
je 0x10001f71
jmp 0x100012c3
mov eax, dword [ebp - 0x98]
sub eax, 0xda621fb5
je 0x100018c3
jmp 0x100012d9
mov eax, dword [ebp - 0x98]
sub eax, 0xe746c74d
je 0x1000261d
jmp 0x100012ef
mov eax, dword [ebp - 0x98]
sub eax, 0xea6cb6c4
je 0x10001e6e
jmp 0x10001305
mov eax, dword [ebp - 0x98]
sub eax, 0xeb8a6e0b
je 0x10002081
jmp 0x1000131b
mov eax, dword [ebp - 0x98]
sub eax, 0xedac3375
je 0x10001f99
jmp 0x10001331
mov eax, dword [ebp - 0x98]
sub eax, 0xeead09dd
je 0x10001bc4
jmp 0x10001347
mov eax, dword [ebp - 0x98]
sub eax, 0xeeed41d2
je 0x10002558
jmp 0x1000135d
mov eax, dword [ebp - 0x98]
sub eax, 0xf1337078
je 0x10001a8f
jmp 0x10001373
mov eax, dword [ebp - 0x98]
sub eax, 0xf400131b
je 0x100020ee
jmp 0x10001389
mov eax, dword [ebp - 0x98]
sub eax, 0xf5be72d4
je 0x1000245f
jmp 0x1000139f
mov eax, dword [ebp - 0x98]
sub eax, 0xf5e98a7c
je 0x100024ed
jmp 0x100013b5
mov eax, dword [ebp - 0x98]
sub eax, 0x2024533
je 0x1000230c
jmp 0x100013cb
mov eax, dword [ebp - 0x98]
sub eax, 0x393a292
je 0x100018e9
jmp 0x100013e1
mov eax, dword [ebp - 0x98]
sub eax, 0x10b86a13
je 0x100018a5
jmp 0x100013f7
mov eax, dword [ebp - 0x98]
sub eax, 0x14378a28
je 0x10001f80
jmp 0x1000140d
mov eax, dword [ebp - 0x98]
sub eax, 0x15d4dcc8
je 0x10002285
jmp 0x10001423
mov eax, dword [ebp - 0x98]
sub eax, 0x18ed462e
je 0x10001aa6
jmp 0x10001439
mov eax, dword [ebp - 0x98]
sub eax, 0x1a9d0f79
je 0x1000164e
jmp 0x1000144f
mov eax, dword [ebp - 0x98]
sub eax, 0x1d48107a
je 0x1000201b
jmp 0x10001465
mov eax, dword [ebp - 0x98]
sub eax, 0x2255491c
je 0x1000171f
jmp 0x1000147b
mov eax, dword [ebp - 0x98]
sub eax, 0x28212aad
je 0x100023fc
jmp 0x10001491
mov eax, dword [ebp - 0x98]
sub eax, 0x2f21e384
je 0x100018d2
jmp 0x100014a7
mov eax, dword [ebp - 0x98]
sub eax, 0x314b52a8
je 0x10002213
jmp 0x100014bd
mov eax, dword [ebp - 0x98]
sub eax, 0x33d3e7cc
je 0x100023ed
jmp 0x100014d3
mov eax, dword [ebp - 0x98]
sub eax, 0x3bd0d808
je 0x1000232e
jmp 0x100014e9
mov eax, dword [ebp - 0x98]
sub eax, 0x4e747bbb
je 0x1000169f
jmp 0x100014ff
mov eax, dword [ebp - 0x98]
sub eax, 0x511bcb7a
je 0x10002471
jmp 0x10001515
mov eax, dword [ebp - 0x98]
sub eax, 0x52bd487c
je 0x10001cdd
jmp 0x1000152b
mov eax, dword [ebp - 0x98]
sub eax, 0x58bb14f0
je 0x100022fd
jmp 0x10001541
mov eax, dword [ebp - 0x98]
sub eax, 0x592de82e
je 0x10001957
jmp 0x10001557
mov eax, dword [ebp - 0x98]
sub eax, 0x5bfdb85b
je 0x10001d30
jmp 0x1000156d
mov eax, dword [ebp - 0x98]
sub eax, 0x5ef5dc48
je 0x1000172e
jmp 0x10001583
mov eax, dword [ebp - 0x98]
sub eax, 0x60517e53
je 0x10001a80
jmp 0x10001599
mov eax, dword [ebp - 0x98]
sub eax, 0x6115e53c
je 0x1000222d
jmp 0x100015af
mov eax, dword [ebp - 0x98]
sub eax, 0x638e5158
je 0x10001fbd
jmp 0x100015c5
mov eax, dword [ebp - 0x98]
sub eax, 0x6556aeb4
je 0x10001c85
jmp 0x100015db
mov eax, dword [ebp - 0x98]
sub eax, 0x6a53cbc1
je 0x100025aa
jmp 0x100015f1
mov eax, dword [ebp - 0x98]
sub eax, 0x6ddd196c
je 0x100023a4
jmp 0x10001607
mov eax, dword [ebp - 0x98]
sub eax, 0x766f0c6d
je 0x1000223c
jmp 0x1000161d
mov eax, dword [ebp - 0x98]
sub eax, 0x7753c2f3
je 0x10001bb5
jmp 0x10001633
mov eax, dword [ebp - 0x98]
sub eax, 0x77a8a9ca
je 0x1000210c
jmp 0x10001649
jmp 0x10002627
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
mov edx, eax
sub edx, 0x1472b8d4
sub edx, 1
add edx, 0x1472b8d4
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, 0x511bcb7a
mov ecx, 0x4e747bbb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
push eax
mov eax, esp
mov dword [ebp - 0x88], eax
sub esp, 0xc
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
sub esp, 0x104
mov eax, esp
mov dword [ebp - 0x78], eax
push eax
mov eax, esp
mov dword [ebp - 0x74], eax
push eax
mov eax, esp
mov dword [ebp - 0x70], eax
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
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, 0x511bcb7a
mov ecx, 0x2255491c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov dword [ebp - 0x90], 0x5ef5dc48
jmp 0x10002627
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
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, 0x83b0d049
mov ecx, 0xba44d4cf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov eax, dword [ebp - 0x94]
push eax
mov ecx, esp
mov dword [ebp - 0x6c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x68], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x64], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x60], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x5c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x58], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x8c], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0x88]
mov dword [eax], ecx
mov eax, dword [ebp - 0x84]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.10010570
add esp, 0xc
mov eax, dword [ebp - 0x8c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
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 - 0x4d], al
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
mov edx, ecx
add edx, 0xb53afff2
sub edx, 1
sub edx, 0xb53afff2
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, 0x83b0d049
mov ecx, 0x10b86a13
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov dl, byte [ebp - 0x4d]
mov eax, 0xda621fb5
mov ecx, 0x2f21e384
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov dword [ebp - 0x90], 0xf5be72d4
jmp 0x10002627
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x90], 0x393a292
jmp 0x10002627
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
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, 0xf5e98a7c
mov ecx, 0x592de82e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov eax, dword [ebp - 0x88]
mov edx, dword [eax]
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x4c]
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 - 0x84]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x7c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x80]
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 - 0x78]
mov dword [ebp - 0x48], eax
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
mov edx, eax
add edx, 0xe456b66b
sub edx, 1
sub edx, 0xe456b66b
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, 0xf5e98a7c
mov ecx, 0xb77f78d9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov dword [ebp - 0x90], 0x83714812
jmp 0x10002627
mov eax, dword [ebp - 0x48]
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 - 0x74]
mov dword [eax], ecx
mov edx, dword [ebp - 0x74]
mov esi, 0xffffffff
mov eax, 0xf1337078
mov ecx, 0x60517e53
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov dword [ebp - 0x90], 0xf5be72d4
jmp 0x10002627
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x90], 0x18ed462e
jmp 0x10002627
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
mov edx, ecx
add edx, 0xb95fbdd9
sub edx, 1
sub edx, 0xb95fbdd9
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, 0xeeed41d2
mov ecx, 0x9c318a30
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov eax, dword [ebp - 0x44]
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 - 0x70]
mov dword [eax], ecx
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov dword [ebp - 0x40], eax
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
mov edx, eax
add edx, 0x8674c2d8
sub edx, 1
sub edx, 0x8674c2d8
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, 0xeeed41d2
mov ecx, 0x7753c2f3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov dword [ebp - 0x90], 0xeead09dd
jmp 0x10002627
mov edx, dword [ebp - 0x40]
mov eax, 0x991c59bb
mov ecx, 0x52bd487c
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x90], 0xb231727b
jmp 0x10002627
mov eax, dword [ebp - 0x3c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x90], 0xc95d9772
jmp 0x10002627
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
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, 0x6a53cbc1
mov ecx, 0x6556aeb4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
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, 0x6a53cbc1
mov ecx, 0xce695cff
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov dword [ebp - 0x90], 0xf5be72d4
jmp 0x10002627
mov eax, dword [ebp - 0x70]
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 - 0x6c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x68]
mov dword [eax], ecx
mov dword [ebp - 0x90], 0x5bfdb85b
jmp 0x10002627
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
mov edx, ecx
add edx, 0xb08a422d
sub edx, 1
sub edx, 0xb08a422d
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, 0xa4533ab0
mov ecx, 0xc912947b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c]
mov dword [ebp - 0x34], eax
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
mov edx, ecx
sub edx, 0x5270cc3f
sub edx, 1
add edx, 0x5270cc3f
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, 0xa4533ab0
mov ecx, 0x9d2c93cb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov dword [ebp - 0x90], 0x9bcd577d
jmp 0x10002627
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
sub ecx, 0x68732d4c
add ecx, eax
add ecx, 0x68732d4c
mov eax, dword [ebp - 0x64]
mov dword [eax], ecx
mov eax, dword [ebp - 0x60]
mov word [eax], 0
mov dword [ebp - 0x90], 0xea6cb6c4
jmp 0x10002627
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
mov edx, ecx
add edx, 0xa65ca993
sub edx, 1
sub edx, 0xa65ca993
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, 0x8cccdc36
mov ecx, 0xca10435d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov eax, dword [ebp - 0x60]
movzx eax, word [eax]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
add eax, 4
add eax, 2
mov dword [ebp - 0x2c], eax
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
mov edx, ecx
sub edx, 0xf9641795
sub edx, 1
add edx, 0xf9641795
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, 0x8cccdc36
mov ecx, 0xd43dc5d5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov dword [ebp - 0x90], 0x14378a28
jmp 0x10002627
mov eax, dword [ebp - 0x2c]
mov ax, word [eax]
mov word [ebp - 0x26], ax
mov dword [ebp - 0x90], 0xedac3375
jmp 0x10002627
mov ax, word [ebp - 0x26]
movzx esi, ax
mov edx, dword [ebp - 0x30]
mov eax, 0x28212aad
mov ecx, 0x638e5158
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov eax, dword [ebp - 0x64]
mov ecx, dword [eax]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 0x18
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
movzx eax, word [eax + 0x14]
add ecx, 0xbf2c1074
add ecx, eax
sub ecx, 0xbf2c1074
mov eax, dword [ebp - 0x60]
movzx eax, word [eax]
imul eax, eax, 0x28
sub ecx, 0x37595566
add ecx, eax
add ecx, 0x37595566
mov eax, dword [ebp - 0x5c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x90], 0x1d48107a
jmp 0x10002627
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x90], 0x9200c712
jmp 0x10002627
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
mov edx, eax
add edx, 0x55a84c56
sub edx, 1
sub edx, 0x55a84c56
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, 0xcb4d7364
mov ecx, 0xeb8a6e0b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov ecx, dword [ebp - 0x20]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x1001c3b0
call fcn.100128e0
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x19], al
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
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, 0xcb4d7364
mov ecx, 0xf400131b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov dl, byte [ebp - 0x19]
mov eax, 0x77a8a9ca
mov ecx, 0x6115e53c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov eax, dword [ebp - 0x58]
mov dword [eax], 0
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x7c]
mov edx, dword [eax]
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
sub edx, eax
mov eax, dword [ebp - 0x58]
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 - 0x54]
mov byte [eax], cl
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x5c]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0xc]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x90], 0xc0850e14
jmp 0x10002627
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov edx, dword [eax + 0xc]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x18]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.100106d0
add esp, 0xc
mov eax, dword [ebp - 0x58]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov eax, dword [ebp - 0x7c]
mov esi, dword [eax]
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
xor eax, eax
sub eax, edi
sub esi, eax
mov eax, dword [ebp - 0x58]
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 al
and al, 1
mov byte [ebp - 0x13], al
mov dword [ebp - 0x90], 0x314b52a8
jmp 0x10002627
mov cl, byte [ebp - 0x13]
and cl, 1
mov eax, dword [ebp - 0x54]
mov byte [eax], cl
mov dword [ebp - 0x90], 0x6115e53c
jmp 0x10002627
mov dword [ebp - 0x90], 0x766f0c6d
jmp 0x10002627
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
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, 0x95a9fd30
mov ecx, 0x15d4dcc8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov eax, dword [ebp - 0x60]
mov ax, word [eax]
mov word [ebp - 0x12], ax
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
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, 0x95a9fd30
mov ecx, 0x58bb14f0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov dword [ebp - 0x90], 0x2024533
jmp 0x10002627
mov cx, word [ebp - 0x12]
xor eax, eax
sub ax, 1
sub cx, ax
mov eax, dword [ebp - 0x60]
mov word [eax], cx
mov dword [ebp - 0x90], 0x3bd0d808
jmp 0x10002627
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
mov edx, ecx
add edx, 0x5d7d944a
sub edx, 1
sub edx, 0x5d7d944a
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, 0xe746c74d
mov ecx, 0x6ddd196c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
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, 0xe746c74d
mov ecx, 0x33d3e7cc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x90], eax
jmp 0x10002627
mov dword [ebp - 0x90], 0xea6cb6c4
jmp 0x10002627
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x90], 0xbb57ad54
jmp 0x10002627
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x90], 0x8f37f6ba
jmp 0x10002627
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x90], 0xf5be72d4
jmp 0x10002627
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1000f970
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0x90], 0x4e747bbb
jmp 0x10002627
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0x8c], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0x88]
mov dword [eax], ecx
mov eax, dword [ebp - 0x84]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.10010570
add esp, 0xc
mov eax, dword [ebp - 0x8c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, eax
mov eax, dword [ebp - 0x80]
mov dword [eax], ecx
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x90], 0xba44d4cf
jmp 0x10002627
mov eax, dword [ebp - 0x88]
mov edx, dword [eax]
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x4c]
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 - 0x84]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x7c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x80]
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 - 0x78]
mov dword [ebp - 0x90], 0x592de82e
jmp 0x10002627
mov eax, dword [ebp - 0x44]
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 - 0x70]
mov dword [eax], ecx
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x90], 0x9c318a30
jmp 0x10002627
mov dword [ebp - 0x90], 0x6556aeb4
jmp 0x10002627
mov eax, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x90], 0xc912947b
jmp 0x10002627
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x90], 0xca10435d
jmp 0x10002627
mov ecx, dword [ebp - 0x20]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x1001c3b0
call fcn.100128e0
add esp, 8
mov dword [ebp - 0x90], 0xeb8a6e0b
jmp 0x10002627
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x90], 0x15d4dcc8
jmp 0x10002627
mov dword [ebp - 0x90], 0x6ddd196c
jmp 0x100010d9