Function at 0x100082b0
Capabilities:
Encode data using base64
Parse pe header
Rebuild import table
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x468
push esi
push edi
mov dword [esp + 0x30], 0xefbe155a
mov al, byte [0x10010017]
mov byte [esp + 0xa], al
mov dword [esp + 0x40], 0xf5e58ad9
mov dword [esp + 0x44], 0xd949d
mov cx, word [0x10010014]
movzx eax, word [0x10010014]
mov dword [esp + 0x74], eax
movsx eax, byte [0x10010007]
mov dword [esp + 0x54], eax
mov eax, dword [0x10010064]
mov dword [esp + 0x4c], eax
mov eax, dword [0x1001001c]
mov dword [esp + 0x60], 0x442a1935
mov dword [esp + 0x64], 0
mov byte [esp + 0x1a], 0xee
mov dword [esp + 0x58], eax
movzx eax, word [0x1001003c]
cdq
mov dword [esp + 0x80], eax
mov al, byte [0x10010030]
mov dword [esp + 0x84], edx
mov dword [esp + 0x3c], 0x6a
mov byte [esp + 0x20], al
mov dword [esp + 0x50], 0x5ea1
mov byte [esp + 0xb], 0xca
mov al, byte [0x1001002e]
mov byte [esp + 0x13], al
movzx eax, al
cdq
mov word [esp + 0x24], cx
mov dword [esp + 0x6c], edx
mov dword [esp + 0x5c], 0x2e2
mov esi, eax
mov eax, 0xffffcf9f
mov word [esp + 0x14], ax
mov eax, 0x4b46
mov word [esp + 0x2c], ax
mov al, byte [0x10010007]
mov dword [esp + 0x28], eax
mov eax, 0x5abf
mov word [esp + 0x1c], ax
mov dword [esp + 0x68], 0x68f5b9b0
movzx eax, word [0x10010084]
mov byte [esp + 0x1b], al
mov eax, 0xffffd000
mov word [esp + 0x38], ax
movzx eax, byte [0x1001002e]
mov dword [esp + 0x30], eax
movzx eax, byte [0x1001002d]
mov word [esp + 0x38], ax
movsx eax, byte [0x1001001b]
mov dword [esp + 0x30], eax
mov eax, dword [0x10010064]
mov word [esp + 0x38], ax
movzx eax, word [0x100100a0]
mov dword [esp + 0x7c], esi
mov word [esp + 0x38], ax
test cl, cl
je 0x10008438
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
mov ax, word [0x1001009c]
sub ax, cx
movsx cx, byte [esp + 0x1a]
not ax
movzx eax, ax
movzx ecx, cx
imul ecx, eax
movsx eax, word [0x10010088]
add eax, 0x1a7ff16d
not cx
mov word [0x10010084], cx
mov dword [esp + 0x54], eax
mov eax, dword [0x100101ec]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add eax, 0x372
mov byte [esp + 0x1b], 0x85
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xc]
add eax, 0x2f2
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0xc]
add eax, 0x1b8
mov dword [esp + 0x30], eax
mov ax, word [esp + 0x1c]
movsx ecx, word [0x10010048]
cwde
imul eax, ecx
mov word [0x10010048], ax
mov eax, dword [0x100101ec]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add eax, 0xe4
mov dword [esp + 0x30], eax
mov al, byte [0x1011e748]
sub byte [0x10010016], al
mov eax, dword [esp + 0xc]
add eax, 0xa7
cmp dword [0x10010010], 0
mov dword [esp + 0xa4], eax
lea eax, [esi - 0x32]
mov word [esp + 0x14], ax
movsx eax, word [0x10010088]
jne 0x100084d4
mov eax, dword [0x1001001c]
mov word [esp + 0x14], ax
mov edx, 0x33d
mov eax, dword [esp + 0xc]
mov edi, 0x4b34
add eax, 0x92
mov dword [esp + 0x30], eax
mov eax, dword [0x100101ec]
mov dword [esp + 0xc], eax
nop dword [eax]
mov ax, word [0x10010014]
dec edx
sub ax, word [0x10010050]
mov word [0x10010014], ax
movzx ecx, word [0x10010084]
imul ecx, edi
movzx eax, cx
movzx ecx, word [0x10010084]
inc word [0x10010088]
add cx, ax
mov word [0x10010084], cx
test edx, edx
jg 0x10008500
mov eax, dword [esp + 0xc]
sub esp, 8
add eax, 0x2f1
mov dword [esp + 0x38], eax
call fcn.100012e0
cwde
xor ecx, ecx
mov dword [0x10010024], eax
add esp, 8
mov eax, dword [0x10010024]
cmp eax, 0x4a
mov eax, dword [0x10010024]
sete cl
neg eax
sbb eax, eax
inc eax
cmp eax, ecx
jb 0x1000858d
mov ax, word [esp + 0x2c]
mov dword [esp + 0x40], 0xb3
mov dword [esp + 0x44], 0
jmp 0x100085a1
mov dword [0x10010050], 4
mov dword [0x10010054], 0
mov eax, dword [esp + 0xc]
add eax, 0x29f
mov dword [esp + 0xbc], eax
mov ax, word [0x100100a0]
mov ax, word [esp + 0x24]
movups xmm0, xmmword [str.AadAuthHelper.dll]
movsx edi, al
movzx eax, word [0x1000f164]
mov word [esp + 0x1e0], ax
lea eax, [esp + 0x1d0]
push eax
movups xmmword [esp + 0x1d4], xmm0
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov word [esp + 0x2c], ax
sub esp, 0x38
mov eax, dword [esp + 0x44]
add eax, 0x21a
mov dword [esp + 0x68], eax
mov al, byte [0x10010040]
add al, 0xa
mov byte [esp + 0x52], al
mov eax, dword [0x100101ec]
mov dword [esp + 0x44], eax
movsx eax, word [0x10010018]
add ax, 0x1c
add ax, word [0x1001004c]
mov word [0x10010018], ax
mov eax, dword [esp + 0x44]
add eax, 0x3db
mov dword [esp + 0x10c], eax
mov eax, dword [esp + 0x44]
add eax, 0x12d
mov dword [esp + 0x1a0], eax
mov eax, dword [esp + 0x44]
add eax, 0x234
mov dword [esp + 0x194], eax
movzx eax, word [0x100c1c54]
sub word [0x1001009c], ax
mov eax, dword [0x100101ec]
mov dword [esp + 0x44], eax
mov ax, word [0x10010084]
mov ax, word [esp + 0x54]
call fcn.10001410
xor edx, edx
mov byte [0x10010006], al
add esp, 0x38
cmp al, 0x18
setle dl
xor ecx, ecx
test al, al
setle cl
cmp ecx, edx
ja 0x100086c6
mov ax, word [0x1001008c]
mov eax, dword [0x10010078]
mov ecx, dword [0x1001007c]
movsx eax, byte [esp + 0x1a]
add eax, 0xfc
cdq
mov dword [0x10010030], eax
mov dword [0x10010034], edx
jmp 0x100086d4
movzx eax, byte [esp + 0xa]
cdq
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], edx
mov eax, dword [esp + 0xc]
add eax, 0x1da
mov dword [esp + 0x1ac], eax
movsx eax, byte [0x10010002]
cdq
cmp edx, dword [0x10010034]
jl 0x10008715
jg 0x100086fe
cmp eax, dword [0x10010030]
jbe 0x10008715
movzx eax, word [0x100100a4]
xor ecx, ecx
cmp byte [esp + 0x28], cl
cmove ecx, eax
test ecx, ecx
sete byte [esp + 0xa]
mov eax, dword [esp + 0xc]
add eax, 0x17b
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xc]
add eax, 0x2c3
cmp byte [0x1001001b], 0
mov dword [esp + 0x1b8], eax
je 0x10008742
movzx edi, byte [0x1001002d]
mov eax, dword [0x100101ec]
mov dword [esp + 0x50], edi
mov dword [esp + 0xc], eax
mov eax, 0xa0ff
xor ax, word [0x10010060]
mov cx, word [0x1001003c]
movzx eax, ax
sub cx, ax
mov word [0x1001003c], cx
mov eax, dword [esp + 0xc]
add eax, 0x327
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xc]
add eax, 0xcd
mov dword [esp + 0x160], eax
movsx ax, byte [esp + 0x1a]
movzx eax, ax
cmp word [0x10010014], ax
jl 0x100087de
mov eax, dword [0x10010028]
sub esp, 8
call fcn.100012e0
xor edx, edx
mov word [esp + 0x34], ax
add esp, 8
cmp word [esp + 0x2c], 0x25
movzx eax, word [esp + 0x2c]
sete dl
xor ecx, ecx
test ax, ax
sete cl
cmp ecx, edx
je 0x100087de
mov eax, 0xffffff5c
sub eax, esi
add eax, dword [esp + 0x54]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0xc]
sub esp, 0x38
add eax, 0x202
mov dword [esp + 0x19c], eax
call fcn.10001410
mov dword [esp + 0x88], eax
xor ecx, ecx
mov eax, dword [esp + 0x88]
add esp, 0x38
cmp eax, 0x41
mov eax, dword [esp + 0x50]
sete cl
neg eax
sbb eax, eax
inc eax
cmp eax, ecx
jae 0x1000886c
movsx ax, byte [0x1001001a]
cmp ax, word [0x10010038]
jge 0x1000884f
movsx ecx, word [0x10010068]
mov eax, ecx
cdq
mov dword [0x1011a378], eax
lea eax, [ecx - 0x47e3]
mov dword [0x1011a37c], edx
mov dword [0x1001001c], eax
jmp 0x1000889a
mov eax, dword [0x10010098]
not eax
test eax, eax
je 0x1000889a
mov al, byte [esp + 0x58]
add al, 0x7f
mov byte [0x10010016], al
mov byte [esp + 0xb], 4
jmp 0x1000889a
movzx ecx, word [0x10010084]
movsx eax, byte [0x10010006]
sub ecx, eax
movzx eax, word [0x10010084]
sub cx, ax
movzx eax, word [0x100101ec]
mov word [0x10010084], cx
mov word [0x1001009c], ax
mov eax, dword [0x100101ec]
sub esp, 8
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
add eax, 0x137
mov dword [esp + 0x174], eax
mov eax, dword [esp + 0x14]
add eax, 0x3e6
mov dword [esp + 0x178], eax
mov eax, dword [esp + 0x14]
add eax, 0x83
mov dword [esp + 0x38], eax
call fcn.10001000
add esp, 8
mov byte [esp + 0xb], al
cmp word [0x1001009c], 0
je 0x10008903
mov eax, dword [esp + 0x3c]
sub eax, 0x47e2c105
mov dword [esp + 0x58], eax
movzx eax, byte [0x100c197d]
mov dword [esp + 0x74], eax
jmp 0x1000895e
mov ax, word [esp + 0x24]
mov esi, dword [esp + 0x60]
mov ecx, dword [esp + 0x64]
movsx eax, al
cdq
cmp ecx, edx
jg 0x10008925
jl 0x1000891e
cmp esi, eax
jae 0x10008925
mov edx, 1
jmp 0x10008927
xor edx, edx
mov ax, word [0x1001003c]
xor ecx, ecx
test ax, ax
sete cl
cmp ecx, edx
jne 0x1000895e
mov eax, dword [0x1001005c]
sub eax, dword [0x10010020]
mov dword [0x1001005c], eax
mov eax, dword [0x10010010]
add eax, 0xca9046e5
add eax, dword [0x10010064]
mov dword [0x10010010], eax
mov esi, dword [0x10010050]
mov edx, esi
mov eax, dword [0x100101ec]
mov edi, dword [0x10010054]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x60]
sub edx, eax
mov ecx, dword [esp + 0x64]
mov eax, edi
sbb eax, ecx
and edx, esi
and eax, edi
mov dword [0x10010050], edx
mov dword [0x10010054], eax
mov ecx, 0x608d
mov eax, dword [esp + 0xc]
add eax, 0xf7
mov dword [esp + 0x174], eax
mov ax, word [0x10010084]
add ax, cx
mov word [esp + 0x1c], ax
mov eax, dword [esp + 0xc]
add eax, 0x3e3
mov dword [esp + 0x1b4], eax
mov eax, dword [esp + 0xc]
add eax, 0x270
mov dword [esp + 0x1b0], eax
mov edx, dword [esp + 0x60]
mov eax, dword [esp + 0x64]
mov cl, byte [0x10010003]
mov al, byte [0x10010003]
add cl, dl
add al, cl
mov byte [0x10010003], al
mov eax, dword [0x100101ec]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add eax, 0x2a8
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0xc]
add eax, 0x313
mov dword [esp + 0x184], eax
mov al, byte [esp + 0x20]
cmp al, byte [esp + 0x1a]
jle 0x10008a4c
mov ax, word [esp + 0x1c]
mov cl, 5
sub cl, al
mov eax, 0x42fb
add byte [esp + 0x24], cl
movsx cx, byte [esp + 0x1a]
cwde
movsx ecx, cx
imul ecx, eax
mov word [0x10010038], cx
jmp 0x10008aa7
cmp byte [esp + 0xb], 0
je 0x10008a75
cmp word [esp + 0x74], 0
je 0x10008a75
mov ecx, dword [0x10010008]
mov eax, dword [0x10010080]
xor ecx, 0x79f64f72
sub eax, ecx
mov dword [0x10010080], eax
jmp 0x10008aa7
mov ecx, dword [esp + 0x60]
mov eax, dword [esp + 0x64]
not ecx
not eax
or ecx, eax
je 0x10008aa7
mov ax, word [0x1018d8a4]
mov word [0x1001008c], ax
mov eax, dword [esp + 0x50]
shl eax, 3
mov dword [0x10010050], eax
mov dword [0x10010054], 0
mov eax, dword [esp + 0xc]
mov esi, dword [esp + 0x6c]
add eax, 0x3cd
mov dword [esp + 0x30], eax
cmp byte [esp + 0x1a], 0
jne 0x10008b1a
mov ecx, dword [esp + 0x50]
xor eax, eax
cmp eax, esi
ja 0x10008ad7
jb 0x10008ad1
cmp ecx, dword [esp + 0x7c]
jae 0x10008ad7
mov dword [esp + 0x3c], eax
jmp 0x10008b1a
mov eax, dword [0x10010058]
not eax
test eax, eax
je 0x10008af6
mov edi, 0x7e92c5d0
mov esi, 0xfefa84b4
mov dword [esp + 0x7c], edi
mov dword [esp + 0x6c], esi
jmp 0x10008b1e
mov al, byte [esp + 0x28]
add al, byte [esp + 0x13]
sub al, byte [0x10010070]
add al, 0x60
not al
mov byte [esp + 0x1b], al
imul eax, dword [esp + 0x54], 0x1f33
mov word [0x100100a0], ax
mov edi, dword [esp + 0x7c]
mov eax, dword [0x100101ec]
movups xmm0, xmmword [str.._AVinvalid_operat]
mov dword [esp + 0xc], eax
mov eax, dword [0x1000f188]
mov dword [esp + 0x210], eax
mov ax, word [0x1000f18c]
movups xmmword [esp + 0x1f0], xmm0
mov word [esp + 0x214], ax
lea eax, [esp + 0x1f0]
movups xmm0, xmmword [0x1000f178]
push eax
movups xmmword [esp + 0x204], xmm0
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov byte [0x10010016], al
sub esp, 8
mov eax, dword [esp + 0x14]
add eax, 0x16e
mov dword [esp + 0x1c8], eax
movzx eax, byte [0x1001002d]
imul ecx, eax, 0xa8c
mov al, byte [0x10010003]
add al, cl
mov byte [0x10010003], al
mov eax, dword [0x10010024]
dec eax
mov dword [0x10010024], eax
mov eax, dword [esp + 0x14]
add eax, 0xb3
mov dword [esp + 0x1c4], eax
mov eax, dword [esp + 0x14]
add eax, 0x21d
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x58]
call fcn.10001000
movzx eax, al
add esp, 8
mov dword [esp + 0x50], eax
cmp dword [esp + 0x50], 0
je 0x10008c44
mov eax, dword [0x10010028]
mov edx, 0x1a
cmp eax, dword [0x10010024]
mov eax, dword [0x10010024]
sbb ecx, ecx
inc ecx
cmp edx, eax
sbb eax, eax
inc eax
cmp ecx, eax
jae 0x10008c28
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x4c]
sub ecx, edi
sub ecx, eax
mov eax, 0xffffe3a0
mov dword [esp + 0x4c], ecx
movsx ecx, word [0x1001004c]
cwde
imul ecx, eax
mov word [esp + 0x14], cx
jmp 0x10008c49
mov ecx, dword [0x10010090]
mov eax, dword [0x10010094]
mov eax, 0x187c
add cx, ax
mov word [0x1001009c], cx
jmp 0x10008c49
mov ax, word [esp + 0x1c]
mov eax, dword [0x100101ec]
sub esp, 8
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x54]
and dword [esp + 0x7c], eax
mov eax, dword [esp + 0x14]
add eax, 0x20a
mov dword [esp + 0x38], eax
mov al, byte [esp + 0x12]
call fcn.100012e0
add esp, 8
test ax, ax
je 0x10008cb5
movzx eax, byte [0x10010001]
movzx ecx, byte [esp + 0xb]
not eax
add eax, ecx
neg eax
sbb eax, eax
inc eax
sub eax, dword [0x10010020]
cdq
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], edx
mov edi, dword [0x10010058]
add edi, 0x9a41
xor esi, esi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x6c], esi
mov eax, dword [esp + 0xc]
add eax, 0x10e
mov dword [esp + 0xd8], eax
movsx eax, byte [esp + 0x1a]
mov ecx, dword [0x10010028]
sub word [0x100100a4], ax
mov eax, dword [0x10010028]
imul ecx, dword [esp + 0x58]
and eax, ecx
mov dword [0x10010028], eax
mov eax, dword [esp + 0xc]
add eax, 0x27b
mov dword [esp + 0x30], eax
mov eax, dword [0x10010090]
mov ecx, dword [0x10010094]
mov ax, word [0x10010014]
cmp dword [0x10010024], 0
jne 0x10008d13
mov eax, dword [esp + 0x68]
mov al, byte [esp + 0xa]
mov eax, dword [esp + 0x54]
cmp word [esp + 0x1c], 0
je 0x10008d45
mov eax, dword [esp + 0x68]
shl eax, 4
mov word [esp + 0x2c], ax
mov al, byte [0x10010007]
inc al
add al, byte [esp + 0x1b]
movsx eax, al
imul eax, eax, 0x1a
mov byte [0x10010006], al
mov eax, dword [0x100101ec]
sub esp, 0x18
mov dword [esp + 0x24], eax
mov al, byte [section..data]
call fcn.10001140
add esp, 0x18
mov word [0x10010004], ax
test ax, ax
je 0x10008d82
mov ax, word [esp + 0x1c]
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x64]
mov dword [0x10010020], 0xb459dc73
jmp 0x10008dc0
cmp byte [0x10010007], 0
je 0x10008d98
mov eax, 0x3000
mov word [0x10010068], ax
jmp 0x10008dc0
cmp byte [esp + 0x1b], 0
je 0x10008dc0
cmp byte [0x10010007], 0
je 0x10008db0
mov eax, edi
mov dword [esp + 0x34], esi
jmp 0x10008dbc
mov eax, dword [esp + 0x68]
mov dword [esp + 0x34], 0
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0xc]
mov esi, 0x2e
add eax, 0x1f1
mov dword [esp + 0x30], eax
movzx eax, word [0x10010084]
cdq
cmp dword [0x10010054], edx
jb 0x10008e66
ja 0x10008df0
cmp dword [0x10010050], eax
jbe 0x10008e66
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x50]
movzx eax, ax
cmp eax, ecx
jbe 0x10008e2a
cmp word [0x10010048], 0
movzx eax, word [0x10010008]
jne 0x10008e17
movzx eax, word [0x10010064]
mov word [0x100100a4], ax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x28], eax
jmp 0x10008ebf
cmp dword [0x1001005c], 0
je 0x10008e48
mov al, byte [esp + 0x1b]
add al, 0x55
mov byte [0x10010016], al
mov eax, dword [esp + 0x28]
mov dword [esp + 0x28], eax
jmp 0x10008ebf
mov eax, dword [esp + 0x28]
mov dword [0x10010078], 0x830e
mov dword [0x1001007c], 0
mov dword [esp + 0x28], eax
jmp 0x10008ebf
cmp dword [esp + 0x4c], 0
je 0x10008e75
cmp word [esp + 0x74], 0
jne 0x10008ebf
mov eax, dword [0x10010080]
cdq
cmp dword [0x10010040], eax
jne 0x10008e92
cmp dword [0x10010044], edx
jne 0x10008e92
mov ecx, 1
jmp 0x10008e94
xor ecx, ecx
mov eax, dword [esp + 0x28]
mov dword [esp + 0x28], eax
cmp dword [esp + 0x54], ecx
je 0x10008ebf
mov ecx, dword [0x10010090]
mov eax, dword [0x10010094]
add cl, 0x5f
mov dword [esp + 0x34], eax
mov word [0x100100a4], si
mov dword [esp + 0x28], ecx
mov eax, dword [esp + 0xc]
add eax, 0x67
mov dword [esp + 0x178], eax
mov eax, 0x2e2
sub eax, dword [0x10010098]
mov dword [0x10010064], eax
mov eax, dword [esp + 0xc]
add eax, 0x339
mov dword [0x10010040], 0x14
mov dword [esp + 0x30], eax
mov eax, dword [0x100101ec]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add eax, 0xaf
mov dword [0x10010044], 0
mov dword [esp + 0x180], eax
mov eax, dword [esp + 0x4c]
mov esi, dword [0x10010034]
cdq
mov ecx, edx
mov edx, dword [0x10010030]
cmp edx, eax
jne 0x10008f36
cmp esi, ecx
jne 0x10008f36
xor ecx, ecx
jmp 0x10008f3b
mov ecx, 1
cmp edx, 0x16
jne 0x10008f48
test esi, esi
jne 0x10008f48
xor eax, eax
jmp 0x10008f4d
mov eax, 1
cmp ecx, eax
je 0x10008f99
cmp word [0x10010014], 0
je 0x10008f99
mov eax, dword [0x100101ec]
mov dword [0x10010080], eax
movzx eax, word [esp + 0x2c]
mov esi, dword [0x10010090]
mov edi, dword [0x10010094]
cdq
sub esi, eax
mov eax, dword [0x10010090]
mov ecx, dword [0x10010094]
sbb edi, edx
and eax, esi
and ecx, edi
mov dword [0x10010090], eax
mov edi, dword [esp + 0x7c]
mov dword [0x10010094], ecx
mov eax, dword [esp + 0xc]
add eax, 0xdd
mov dword [esp + 0x17c], eax
mov eax, dword [0x10010078]
cmp eax, edi
mov ecx, dword [0x1001007c]
mov edi, dword [esp + 0x6c]
jne 0x10008fc0
cmp ecx, edi
je 0x1000901d
cmp byte [0x1001002e], 0
je 0x1000901d
mov ecx, dword [0x10010064]
mov eax, dword [esp + 0x74]
not ecx
movzx eax, ax
imul ecx, eax
mov al, byte [section..data]
neg ecx
sbb ecx, ecx
inc ecx
movzx edx, cx
xor ecx, ecx
test al, al
sete cl
add cx, dx
movzx eax, cx
movsx ecx, byte [0x1001001a]
add ecx, eax
movzx eax, cx
mov ecx, dword [esp + 0x68]
add ecx, eax
mov eax, dword [esp + 0x28]
add al, byte [0x10010040]
mov word [0x10010004], cx
mov byte [0x10010003], al
mov eax, dword [esp + 0xc]
add eax, 0x262
mov dword [esp + 0x30], eax
mov ax, word [0x10010084]
mov cl, byte [esp + 0xa]
sub cl, al
mov al, byte [0x10010048]
mov byte [esp + 0xa], cl
mov byte [0x10016bed], al
mov eax, dword [0x100101ec]
mov dword [esp + 0xc], eax
mov ecx, dword [0x10010078]
mov eax, dword [0x1001007c]
or ecx, eax
jne 0x100090ad
mov eax, dword [esp + 0x58]
cmp eax, dword [esp + 0x54]
jb 0x100090ad
movzx eax, word [esp + 0x14]
xor edx, edx
test ax, ax
mov ax, word [esp + 0x24]
movsx eax, al
sete dl
cmp edx, eax
movzx eax, word [esp + 0x14]
sete cl
movzx edx, cx
xor ecx, ecx
test ax, ax
sete cl
movzx eax, cx
mov cx, word [0x1001003c]
add cx, ax
movsx eax, dx
movsx ecx, cx
imul ecx, eax
mov word [0x10010048], cx
mov eax, dword [esp + 0xc]
xor edx, edx
add eax, 0x280
mov dword [esp + 0x30], eax
mov ax, word [esp + 0x14]
mov byte [0x100a3d7f], al
mov eax, dword [esp + 0xc]
movsx ecx, byte [0x10010016]
add eax, 0x4a
mov dword [esp + 0xd0], eax
movzx eax, byte [esp + 0xb]
xor ecx, eax
movsx eax, word [0x100100a0]
mov esi, dword [esp + 0x68]
add eax, ecx
mov ecx, dword [esp + 0x68]
add esi, eax
mov eax, dword [esp + 0x50]
inc ecx
add eax, ecx
xor ecx, ecx
and eax, dword [0x10010040]
and ecx, dword [0x10010044]
sub esi, eax
sbb edx, ecx
or esi, edx
jne 0x10009119
lea eax, [esi + 1]
xor ecx, ecx
jmp 0x1000912a
xorps xmm0, xmm0
movlpd qword [esp + 0x30], xmm0
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], ecx
mov eax, dword [esp + 0xc]
add eax, 0x331
mov dword [0x10010050], 0x24
mov dword [0x10010054], 0
mov dword [esp + 0xc4], eax
mov ax, word [esp + 0x1c]
add al, byte [0x10010064]
mov byte [esp + 0xb], al
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
shld eax, ecx, 5
mov eax, dword [0x100101ec]
shl ecx, 5
mov dword [esp + 0x50], ecx
mov dword [esp + 0xc], eax
movzx eax, byte [0x1001002d]
mov esi, dword [esp + 0x80]
mov ecx, dword [esp + 0x84]
cdq
cmp edx, ecx
ja 0x100091ae
jb 0x100091a1
cmp eax, esi
jae 0x100091ae
mov eax, 0xc4ac
mov word [0x1001008c], ax
jmp 0x100091f7
movsx eax, word [0x10010014]
not eax
test eax, eax
je 0x100091cb
movzx eax, byte [0x10010003]
add word [0x1001004c], ax
jmp 0x100091f7
cmp word [esp + 0x74], 0
je 0x100091df
mov dword [0x10010098], 0x56
jmp 0x100091f7
movsx eax, word [0x10010038]
add eax, dword [0x1001006c]
cdq
mov edi, edx
mov dword [esp + 0x7c], eax
mov dword [esp + 0x6c], edi
mov ecx, dword [esp + 0xc]
add ecx, 0x2ca
mov dword [esp + 0x1a4], ecx
mov ecx, dword [esp + 0xc]
add ecx, 0x64
cmp word [0x10010048], 0
mov dword [esp + 0xa8], ecx
jne 0x1000926d
mov esi, dword [0x1001005c]
xor edx, edx
mov eax, dword [0x10010090]
sub esi, eax
mov ecx, dword [0x10010094]
mov eax, dword [0x10010090]
sbb edx, ecx
mov ecx, dword [0x10010094]
add eax, esi
mov dword [0x10010090], eax
adc ecx, edx
mov dword [0x10010094], ecx
movzx eax, word [esp + 0x14]
sub ax, word [0x10010030]
movzx ecx, ax
movzx eax, word [esp + 0x14]
sub cx, ax
mov word [esp + 0x14], cx
mov eax, dword [esp + 0xc]
add eax, 0x2f1
mov dword [esp + 0x30], eax
mov cl, byte [esp + 0xa]
mov al, byte [esp + 0xa]
sub cl, al
sub cl, byte [0x10010017]
mov byte [esp + 0xa], cl
cmp dword [esp + 0x54], 0
mov al, byte [esp + 0x20]
jne 0x1000929d
mov al, byte [esp + 0x1a]
mov byte [0x10010006], al
mov eax, dword [0x100101ec]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add eax, 0x275
cmp byte [esp + 0x24], 0
mov dword [esp + 0xc0], eax
jne 0x1000936a
mov eax, dword [0x1001001c]
not eax
cmp dword [esp + 0x50], eax
jne 0x100092f1
mov ax, word [0x10010014]
sub al, 0x77
cmp dword [esp + 0x54], 0
mov byte [esp + 0x24], al
jne 0x1000936a
mov ax, word [esp + 0x2c]
jmp 0x1000936a
cmp dword [0x10010080], 0
je 0x10009355
movzx ecx, word [0x10010084]
movzx eax, word [0x10010084]
mov edx, dword [esp + 0x68]
add ecx, eax
mov esi, dword [esp + 0x3c]
xor eax, eax
mov di, word [esp + 0x1c]
not ecx
mov dword [esp + 0x70], edx
cmp dword [esp + 0x70], eax
mov dl, byte [0x10010001]
sete al
sub cx, ax
xor eax, eax
test esi, esi
sete al
add cx, ax
movsx eax, byte [esp + 0x20]
sub cx, di
mov edi, dword [esp + 0x6c]
add cx, ax
movzx eax, dl
add cx, ax
mov word [esp + 0x14], cx
jmp 0x1000936a
mov al, byte [esp + 0xb]
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x64]
mov al, byte [0x100101ec]
mov byte [esp + 0x20], al
mov eax, dword [esp + 0xc]
movsx ecx, byte [0x1001001b]
add eax, 0x229
mov dword [esp + 0x1a8], eax
not ecx
mov ax, word [esp + 0x24]
movsx eax, al
sub ecx, eax
mov edx, dword [esp + 0x58]
movsx eax, word [esp + 0x14]
imul eax, ecx
movsx ecx, dl
test eax, eax
sete al
movsx eax, al
imul eax, ecx
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0xc]
add eax, 0x279
mov dword [esp + 0xa0], eax
mov eax, dword [0x10010090]
mov ecx, dword [0x10010094]
not eax
mov dword [esp + 0x80], eax
not ecx
mov dword [esp + 0x84], ecx
xor ecx, ecx
movzx eax, byte [esp + 0xb]
cmp byte [esp + 0x1b], cl
cmove ecx, eax
mov eax, dword [0x100101ec]
neg ecx
sbb ecx, ecx
xor edx, 0x8964
inc ecx
mov dword [esp + 0x58], edx
mov word [0x10010060], cx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add eax, 0x116
movzx ecx, dx
mov dword [esp + 0x9c], eax
mov eax, 0x2c80
mov word [0x1001008c], ax
mov eax, dword [esp + 0xc]
inc eax
mov dword [esp + 0x19c], ecx
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xc]
add eax, 0x295
mov dword [esp + 0x154], eax
movzx eax, byte [0x10010017]
sub ax, cx
mov word [esp + 0x38], ax
movzx eax, ax
mov dword [esp + 0x158], eax
mov eax, dword [0x100101ec]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add eax, 0x15
mov dword [esp + 0x70], eax
mov eax, dword [0x100101ec]
mov dword [0x10010058], eax
movzx eax, word [0x10010084]
mov word [0x10010048], ax
mov eax, dword [esp + 0xc]
add eax, 0x1f6
cmp dword [0x10010010], 0x2e2
mov dword [esp + 0xcc], eax
jg 0x100094c1
cmp byte [section..data], 0
jne 0x100094c1
movzx eax, byte [0x100ca3c8]
mov dword [0x10010058], 0x6a56
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0xc]
add eax, 0x99
mov esi, dword [esp + 0x7c]
mov dword [esp + 0xc8], eax
mov al, byte [0x10010001]
mov eax, dword [0x10010098]
mov word [esp + 0x20], ax
mov al, byte [0x10010006]
mov byte [esp + 0x13], al
movsx edx, word [0x1001009c]
mov byte [esp + 0x13], 0xe6
mov al, byte [0x1001002e]
mov al, byte [0x1001002e]
mov al, byte [0x1001006c]
mov byte [esp + 0x13], al
mov eax, dword [0x10010080]
mov eax, 0xc8
mov dword [esp + 0x98], 1
mov word [esp + 0x28], ax
mov ax, word [0x1001008c]
mov eax, 0xffffe6d5
mov word [esp + 0x28], ax
mov dword [esp + 0x30], 0xad
movzx eax, word [0x10010014]
mov byte [esp + 0x1b], al
mov byte [esp + 0x1b], 1
mov eax, dword [0x10010028]
mov byte [esp + 0x1b], 0x11
mov eax, dword [0x1001005c]
mov al, byte [section..data]
mov al, byte [0x10010007]
mov eax, dword [0x1001001c]
mov ecx, dword [0x10010098]
add eax, 0x57
mov word [esp + 0x28], ax
mov eax, ecx
xor eax, 0xd9
sub ecx, eax
mov eax, dword [0x10010028]
and eax, 0x169a
mov dword [0x10010098], ecx
mov word [0x10010068], ax
movzx eax, word [0x10010014]
cwde
movsx ecx, dx
imul eax, ecx
mov word [0x10010014], ax
mov ax, word [esp + 0x20]
mov al, byte [esp + 0x13]
mov byte [esp + 0x20], al
mov eax, esi
or eax, edi
je 0x100095cb
mov dword [esp + 0x98], 0
mov eax, dword [0x10010030]
or eax, dword [0x10010034]
mov dword [esp + 0x88], 1
je 0x100095ee
mov dword [esp + 0x88], 0
movsx eax, word [esp + 0x14]
xor edx, edx
cmp eax, dword [esp + 0x88]
mov eax, 1
movsx ecx, byte [0x1001001b]
sete dl
cmp ecx, dword [esp + 0x98]
cmovne edx, eax
mov eax, dword [esp + 0x74]
movzx eax, ax
mov dword [esp + 0x98], edx
xor edx, edx
cmp byte [0x10010016], dl
mov dword [esp + 0x88], eax
mov eax, dword [0x10010080]
sete dl
not eax
xor ecx, ecx
cmp eax, edx
setge cl
xor eax, eax
cmp ecx, dword [esp + 0x88]
sete al
cmp eax, dword [esp + 0x98]
jbe 0x1000966e
mov ecx, dword [0x10010050]
mov eax, dword [0x10010054]
shld eax, ecx, 3
shl ecx, 3
mov dword [esp + 0x5c], ecx
mov eax, dword [0x100101ec]
mov dword [esp + 0xc], eax
movsx eax, word [0x10010018]
add eax, 0xcb6c
mov dword [0x1001001c], eax
cmp word [esp + 0x2c], 0
mov al, byte [0x10010001]
jne 0x10009699
mov al, byte [esp + 0xa]
mov word [esp + 0x28], ax
mov eax, dword [esp + 0xc]
add eax, 0x2c9
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0xc]
add eax, 0x124
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0xc]
add eax, 0x33b
mov dword [esp + 0xb0], eax
movzx eax, word [esp + 0x38]
cdq
mov ecx, eax
mov eax, edx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x6c], eax
cmp esi, ecx
jne 0x100096e9
cmp edi, eax
jne 0x100096e9
xor ecx, ecx
jmp 0x100096ee
mov ecx, 1
cmp esi, 0x41
jne 0x100096fb
test edi, edi
jne 0x100096fb
xor eax, eax
jmp 0x10009700
mov eax, 1
cmp ecx, eax
jne 0x10009749
mov ax, word [esp + 0x24]
mov ecx, 0x62f1
cbw
sub ax, cx
mov word [0x10010038], ax
movzx eax, word [esp + 0x1c]
movsx ecx, byte [0x10010007]
not eax
and ecx, eax
xor eax, eax
cmp ecx, 0x7b43941c
sete al
imul eax, dword [0x10010010]
cdq
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], edx
jmp 0x100097e5
cmp word [0x10010060], 0
je 0x10009763
mov al, byte [esp + 0x58]
add al, 0x6a
mov byte [0x10010001], al
jmp 0x100097e5
cmp word [0x10010014], 0
je 0x100097d1
cmp byte [esp + 0xb], 0
jne 0x1000977d
mov ecx, 1
xor eax, eax
jmp 0x1000978e
xorps xmm0, xmm0
movlpd qword [esp + 0x30], xmm0
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
push edi
push esi
push eax
push ecx
call fcn.1000e090
or eax, edx
jne 0x100097d1
cmp byte [section..data], al
je 0x100097e5
mov cx, word [0x1001003c]
mov eax, 0xac52
movzx ecx, cx
imul ecx, eax
mov ax, word [0x1001003c]
mov word [0x100100a4], cx
mov ecx, 0x14e4
sub ax, cx
mov word [esp + 0x14], ax
jmp 0x100097e5
movzx eax, byte [0x10010001]
cdq
add dword [0x10010030], eax
adc dword [0x10010034], edx
mov eax, dword [0x100101ec]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add eax, 0x329
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xc]
add eax, 0x182
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xc]
add eax, 0xb2
mov dword [esp + 0x30], eax
cmp dword [esp + 0x4c], 0
jne 0x10009828
mov al, byte [0x100101ec]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x54]
inc eax
mov dword [esp + 0x54], eax
movsx eax, word [0x100100a0]
mov ecx, dword [0x10010028]
xor ecx, eax
mov byte [esp + 0x10b], 0x6c
mov eax, dword [esp + 0x5c]
sub eax, ecx
mov ecx, dword [esp + 0x80]
cdq
mov dword [0x10010050], eax
mov al, byte [0x100101ec]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x84]
mov dword [0x10010054], edx
cmp dword [esp + 0x6c], eax
jb 0x10009886
ja 0x1000987f
cmp dword [esp + 0x38], ecx
jb 0x10009886
mov ecx, 1
jmp 0x10009888
xor ecx, ecx
cmp word [esp + 0x158], 0xe
sbb eax, eax
inc eax
cmp ecx, eax
jbe 0x100098b4
mov al, byte [0x10010007]
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x64]
mov ax, word [0x10010084]
add al, 5
mov word [esp + 0x28], ax
jmp 0x100098b9
mov ax, word [esp + 0x28]
movzx eax, al
cmp word [esp + 0x1c], ax
mov byte [esp + 0x105], 0x6c
sbb edx, edx
neg edx
cmp word [esp + 0x1c], 0x3e
sbb ecx, ecx
neg ecx
cmp edx, ecx
je 0x1000997c
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x40]
cdq
mov dword [esp + 0x158], ecx
mov ecx, dword [esp + 0x44]
cmp ecx, edx
jl 0x10009926
jg 0x10009905
cmp dword [esp + 0x158], eax
jb 0x10009926
cmp byte [0x10010016], 0
mov ax, word [esp + 0x68]
jne 0x10009919
mov ax, word [0x1001008c]
mov word [0x10010048], ax
mov byte [esp + 0x7c], 0xab
jmp 0x1000997c
cmp word [esp + 0x74], 0
jne 0x10009944
mov ax, word [0x1001003c]
mov cl, byte [esp + 0xb]
add cl, al
or cl, byte [esp + 0xb]
mov byte [esp + 0xb], cl
jmp 0x1000997c
mov eax, dword [esp + 0x3c]
push edi
push esi
push 0
push eax
call fcn.1000e090
or eax, edx
jne 0x1000996a
mov eax, dword [0x10010010]
xor ecx, ecx
cmp dword [0x10010020], ecx
sete cl
sub eax, ecx
je 0x1000997c
mov eax, 0x596
add ax, word [0x10010004]
mov word [0x10010018], ax
movzx eax, byte [esp + 0xb]
sub esp, 8
movsx ecx, byte [0x10010016]
sub ecx, eax
mov byte [esp + 0x108], 0x4b
mov eax, dword [esp + 0x5c]
inc eax
mov byte [esp + 0x10e], 0x33
add eax, ecx
movsx ecx, word [0x10010068]
sub ecx, dword [esp + 0x64]
imul ecx, eax
mov dword [0x10010080], 0x96081676
mov al, byte [esp + 0x22]
neg al
mov byte [esp + 0x23], al
mov eax, dword [esp + 0xb4]
mov eax, dword [esp + 0x48]
mov dword [esp + 0x74], ecx
mov ecx, dword [esp + 0x4c]
mov eax, dword [0x10010028]
mov al, byte [esp + 0x13]
mov byte [esp + 0x112], 0x6c
call fcn.10001000
movzx edi, al
add esp, 8
mov byte [esp + 0x13], al
movsx eax, word [esp + 0x14]
mov esi, dword [esp + 0x60]
mov ecx, dword [esp + 0x64]
not esi
cdq
not ecx
mov dword [esp + 0xac], edi
mov byte [esp + 0x102], 0x72
cmp edx, ecx
jg 0x10009a31
jl 0x10009a24
cmp eax, esi
ja 0x10009a31
mov dword [esp + 0x88], 1
jmp 0x10009a3c
mov dword [esp + 0x88], 0
mov ecx, dword [esp + 0x50]
xor esi, esi
mov eax, dword [esp + 0x60]
mov edx, dword [esp + 0x64]
cmp ecx, eax
jne 0x10009a59
cmp esi, edx
jne 0x10009a59
mov esi, 1
jmp 0x10009a5b
xor esi, esi
movzx eax, byte [0x10010017]
mov ecx, dword [esp + 0x40]
mov edi, dword [esp + 0x44]
cdq
add ecx, eax
mov dword [esp + 0xc], edi
mov eax, dword [0x10010010]
adc dword [esp + 0xc], edx
mov edi, dword [esp + 0xac]
cdq
or eax, 0x90ed652f
or edx, 0x4a2c7
cmp eax, ecx
jne 0x10009a9b
cmp edx, dword [esp + 0xc]
jne 0x10009a9b
xor eax, eax
jmp 0x10009aa0
mov eax, 1
xor esi, dword [esp + 0x88]
cmp esi, eax
jb 0x10009acc
test di, di
je 0x10009abe
mov ax, word [0x10010070]
sub al, 0x51
mov byte [esp + 0xa], al
jmp 0x10009ae0
mov eax, dword [esp + 0x68]
add eax, 0x36
mov dword [0x1001006c], eax
jmp 0x10009ae0
movsx ecx, word [0x10010068]
not ecx
movzx eax, di
sub ecx, eax
mov dword [0x10010098], ecx
mov eax, dword [esp + 0xa4]
sub al, byte [esp + 0xa4]
mov ecx, dword [esp + 0xa4]
add cl, 0x73
movsx eax, al
movsx ecx, cl
imul ecx, eax
add cl, 0x6e
mov byte [esp + 0x103], cl
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
sub cl, byte [0x10010060]
mov byte [esp + 0x1a], cl
mov ecx, 0x128
mov al, byte [0x10010001]
sub al, byte [esp + 0x13]
mov byte [0x1001001b], al
mov ax, word [esp + 0x14]
mov eax, dword [esp + 0x4c]
sub ecx, 1
jne 0x10009b30
mov eax, dword [esp + 0xbc]
mov eax, dword [esp + 0xbc]
mov byte [esp + 0x109], 0x64
cmp word [0x100100a4], cx
je 0x10009b6e
mov esi, dword [0x10010054]
mov eax, dword [0x10010050]
mov dword [esp + 0x5c], esi
jmp 0x10009b7a
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x5c], 0
mov ecx, dword [0x10010078]
mov dword [esp + 0xc], eax
mov eax, dword [0x1001007c]
mov al, byte [esp + 0xa]
and al, cl
mov byte [esp + 0x101], 0x65
mov byte [esp + 0xa], al
movzx eax, byte [0x1001002c]
cdq
neg eax
mov word [esp + 0x107], 0x2e32
mov dword [0x10010050], eax
mov eax, dword [0x10010080]
adc edx, 0
sub esp, 0x18
mov byte [esp + 0x11c], 0x65
neg edx
mov dword [0x10010054], edx
call fcn.10001140
add esp, 0x18
mov byte [0x1001002c], al
cmp dword [0x10010020], 0
je 0x10009c3e
mov al, byte [esp + 0xb]
sub esp, 8
call fcn.10001000
xor edx, edx
movzx ecx, al
add esp, 8
mov word [0x10010004], cx
cmp al, 0x36
setne dl
xor ecx, ecx
test al, al
setne cl
cmp ecx, edx
jne 0x10009c3e
movsx ecx, word [0x100100a0]
cmp dword [esp + 0x68], ecx
mov esi, dword [0x10010098]
sbb ecx, ecx
inc ecx
cmp esi, ecx
jg 0x10009c44
and edi, 0x405d
mov eax, edi
cdq
mov dword [0x10010090], eax
mov dword [0x10010094], edx
jmp 0x10009c44
mov esi, dword [0x10010098]
xor ecx, ecx
mov byte [esp + 0x10c], 0
cmp esi, 0x8964
setl cl
xor eax, eax
cmp esi, 0x4a
setl al
cmp ecx, eax
jae 0x10009c96
mov eax, 0xc506
mov ecx, 0x175a
sub eax, dword [esp + 0x6c]
add eax, dword [0x10010080]
mov dword [0x10010080], eax
nop dword [eax]
mov eax, dword [esp + 0x3c]
not eax
add eax, 0x8964
mov dword [esp + 0x50], eax
sub ecx, 1
jne 0x10009c80
jmp 0x10009cad
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
mov eax, 0x326d
sub cx, ax
mov word [0x1001008c], cx
movzx ecx, byte [section..data]
mov esi, 0x2e
movsx ax, byte [0x10010002]
xor ax, cx
mov word [0x10010084], ax
imul eax, dword [esp + 0x4c], 0x235a
mov byte [esp + 0xf2], 0x6c
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x3c]
mov word [0x100c17ac], ax
mov eax, dword [esp + 0xd4]
mov edx, dword [esp + 0x15c]
mov dword [esp + 0xd4], eax
mov eax, dword [esp + 0x168]
mov ecx, dword [esp + 0x168]
sub dl, byte [esp + 0xd4]
xor cl, al
movsx eax, dl
movsx ecx, cl
imul ecx, eax
movzx eax, byte [esp + 0x1b]
cdq
mov dword [esp + 0x15c], eax
mov eax, edx
mov byte [esp + 0xf0], 0x64
add cl, 0x6c
mov dword [esp + 0xd4], eax
mov byte [esp + 0xec], cl
nop word [eax + eax]
mov ecx, dword [esp + 0x40]
mov edi, dword [esp + 0x44]
cmp dword [esp + 0x15c], ecx
jne 0x10009de9
cmp eax, edi
jne 0x10009de9
movzx ecx, word [0x10010084]
xor edx, edx
movsx eax, word [0x10010014]
cmp ecx, eax
mov eax, dword [0x10010098]
not eax
setne dl
imul eax, dword [0x10010064]
not eax
cmp edx, eax
jb 0x10009db5
mov byte [esp + 0xb], 0
mov ecx, dword [0x1001005c]
mov eax, dword [esp + 0x4c]
add eax, 0x1545ad2f
add eax, ecx
mov dword [esp + 0x4c], eax
jmp 0x10009e33
mov ecx, dword [esp + 0x60]
mov eax, dword [esp + 0x64]
or ecx, eax
je 0x10009e33
mov ax, word [0x10010088]
mov cl, byte [0x10010017]
neg ax
sub cl, byte [esp + 0xc]
mov word [0x10010060], ax
mov al, byte [0x10010017]
sub cl, al
mov byte [0x10010017], cl
jmp 0x10009e33
mov eax, dword [0x10010028]
mov ecx, dword [0x10010058]
not eax
mov edx, dword [esp + 0x60]
movzx eax, ax
add ecx, eax
mov eax, dword [esp + 0x64]
xor dx, word [0x10010060]
movzx ecx, cx
and dx, cx
mov word [esp + 0x14], dx
mov ecx, dword [esp + 0x80]
mov eax, dword [esp + 0x84]
movzx eax, cx
mov cx, word [esp + 0x1c]
and cx, ax
mov word [esp + 0x1c], cx
mov ax, word [0x10010018]
dec esi
inc ax
mov word [0x10010018], ax
mov eax, dword [esp + 0xd4]
test esi, esi
jg 0x10009d50
mov ax, word [esp + 0x14]
mov al, byte [esp + 0xb]
cmp al, byte [0x1001002c]
mov byte [esp + 0xef], 0x2e
sbb ecx, ecx
mov byte [esp + 0xe9], 0x68
neg ecx
cmp byte [esp + 0xb], 0x1f
sbb eax, eax
neg eax
cmp ecx, eax
ja 0x10009eca
sub esp, 0x18
call fcn.10001140
movzx edx, word [0x1001003c]
add esp, 0x18
movsx ecx, word [0x10010060]
mov byte [esp + 0x28], al
xor eax, eax
cmp edx, ecx
mov cx, word [0x10010014]
setle al
xor edx, edx
cmp cx, word [0x1001004c]
setle dl
cmp eax, edx
jb 0x10009eca
mov eax, dword [0x10010050]
add eax, 0x88acff9
mov dword [esp + 0x54], eax
cmp byte [esp + 0x28], 0
mov byte [esp + 0xe8], 0x53
je 0x10009f25
mov esi, 0x188
nop
movsx eax, word [esp + 0x14]
movzx ecx, word [0x10010004]
add ecx, eax
mov ax, word [esp + 0x14]
or ax, cx
mov word [esp + 0x14], ax
movzx eax, word [0x10010070]
push 0
cdq
push 0xba
push edx
push eax
call fcn.1000e090
inc word [0x10010088]
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], edx
sub esi, 1
jne 0x10009ee0
mov eax, dword [esp + 0x19c]
sub esp, 8
mov word [0x10010048], ax
movsx eax, byte [esp + 0x22]
xor eax, 0x831ec524
mov byte [esp + 0xf5], 0x33
mov dword [0x10010028], eax
mov byte [esp + 0xf3], 0x6c
call fcn.100012e0
mov edi, dword [esp + 0x60]
add esp, 8
movzx esi, ax
test si, si
je 0x10009f9f
mov eax, dword [esp + 0x3c]
movsx ecx, word [esp + 0x14]
neg eax
sbb eax, eax
xor edx, edx
inc eax
or ecx, eax
movsx eax, word [0x100100a0]
cmp eax, edi
mov al, byte [0x10010064]
sete dl
add edx, ecx
neg edx
sbb edx, edx
inc edx
sub al, 0x75
mov dword [esp + 0x54], edx
mov byte [0x10010017], al
jmp 0x10009fc6
mov eax, dword [esp + 0x6c]
or eax, 0
je 0x10009fc6
mov ecx, dword [esp + 0x3c]
mov eax, 0x688f
imul ecx, dword [esp + 0x54]
mov word [0x10010038], ax
mov eax, dword [esp + 0x54]
sub eax, ecx
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x1ac]
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 0x1b8]
mov byte [esp + 0xf1], 0x6c
cmp edx, 0x8964
jne 0x1000a002
cmp dword [esp + 0x5c], 0
jne 0x1000a002
mov eax, dword [0x10010024]
imul eax, dword [0x1001006c]
mov dword [0x1001006c], eax
jmp 0x1000a026
mov eax, dword [esp + 0x58]
mov edi, eax
cmp eax, dword [0x10010098]
ja 0x1000a01b
mov eax, dword [0x100101ec]
mov dword [esp + 0x6c], eax
jmp 0x1000a026
lea eax, [esi - 0xe03c]
mov dword [0x10010010], eax
movzx eax, byte [esp + 0xb]
shr eax, 3
mov byte [esp + 0xea], 0x65
mov dword [0x1001005c], eax
mov eax, dword [0x10010098]
add eax, 0xffff8f53
mov byte [esp + 0xee], 0x32
mov word [esp + 0x14], ax
mov eax, dword [0x10010040]
add eax, 0x1832
mov word [0x100100a0], ax
mov eax, dword [0x1001005c]
mov ecx, dword [0x10010010]
sub ecx, eax
movsx eax, byte [esp + 0x20]
xor eax, ecx
mov word [0x10010084], ax
mov eax, dword [esp + 0x160]
mov eax, dword [esp + 0x164]
cmp dword [0x1001001c], 0
mov byte [esp + 0xf3], 0
jne 0x1000a14a
mov ecx, dword [esp + 0x60]
mov eax, dword [esp + 0x64]
or ecx, eax
je 0x1000a0c5
mov ax, word [esp + 0x28]
mov cl, byte [esp + 0xb]
movzx eax, al
imul eax, eax, 0x2a
sub cl, al
mov byte [esp + 0xb], cl
jmp 0x1000a14a
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
not ecx
not eax
cmp dword [0x10010044], eax
jg 0x1000a0ea
jl 0x1000a0e3
cmp dword [0x10010040], ecx
ja 0x1000a0ea
mov esi, 1
jmp 0x1000a0ec
xor esi, esi
mov ax, word [esp + 0x28]
mov ecx, dword [0x10010024]
movzx eax, al
add ecx, eax
cmp esi, ecx
ja 0x1000a10d
lea eax, [edx - 0x928027f]
mov dword [0x10010098], eax
jmp 0x1000a14a
cmp byte [esp + 0xa], 0
je 0x1000a14a
movsx eax, byte [esp + 0x20]
mov ecx, dword [0x10010080]
mov edx, dword [0x1001005c]
xor ecx, eax
mov ax, word [0x10010084]
imul edx, ecx
sub al, dl
mov byte [esp + 0x1a], al
imul ecx, dword [esp + 0x68], 0xd1
mov eax, dword [0x1001001c]
add eax, ecx
mov dword [0x1001001c], eax
mov eax, dword [esp + 0x40]
mov edx, dword [0x10010030]
mov esi, dword [0x10010034]
mov ecx, dword [esp + 0x44]
shld esi, edx, 1
mov byte [esp + 0xf8], 0x61
add edx, edx
mov dword [0x10010054], 0
add eax, edx
mov dword [0x10010030], eax
mov eax, dword [0x100101ec]
adc ecx, esi
mov dword [0x10010050], eax
mov ax, word [0x10010070]
mov dword [0x10010034], ecx
inc ax
mov word [0x10010070], ax
mov ecx, 0x1b7
mov ax, word [0x10010070]
dec ax
mov word [0x10010070], ax
sub ecx, 1
jne 0x1000a1a2
mov eax, dword [esp + 0x16c]
mov ecx, dword [esp + 0x16c]
xor cl, al
mov eax, dword [esp + 0x170]
movsx edx, al
mov eax, dword [esp + 0x170]
movsx ecx, cl
imul edx, ecx
movsx ecx, dl
movsx edx, al
mov al, 0x2e
imul edx, ecx
movzx ecx, word [0x10010038]
sub al, dl
xor edx, edx
mov byte [esp + 0xfb], al
mov ax, word [0x10010014]
cmp cx, ax
setne dl
xor eax, eax
cmp cx, 0x2d
setne al
cmp edx, eax
ja 0x1000a21e
mov al, byte [0x10010040]
mov byte [0x1001001a], al
jmp 0x1000a226
mov dword [esp + 0x3c], 0xcb
mov byte [esp + 0xf4], 0x53
mov esi, 0x280
nop dword [eax]
nop word [eax + eax]
movsx ecx, byte [0x1001001a]
xor edx, edx
mov eax, dword [0x10010028]
cmp eax, ecx
mov eax, dword [0x10010028]
setge dl
xor ecx, ecx
cmp eax, 0x60
setge cl
cmp edx, ecx
ja 0x1000a274
mov al, byte [0x10010007]
add al, byte [0x1017a4b8]
mov byte [0x10010007], al
dec esi
test esi, esi
jg 0x1000a240
mov eax, dword [0x10010008]
add eax, dword [esp + 0x6c]
mov word [0x10010038], ax
mov ax, word [esp + 0x28]
movzx ecx, al
movsx eax, word [0x10010060]
not ecx
add ecx, eax
mov byte [esp + 0xf9], 0x70
mov eax, dword [0x10010024]
sub ecx, eax
movzx eax, word [0x10010060]
add ecx, 0x492c8db0
mov dword [esp + 0x160], eax
movzx eax, ax
mov dword [esp + 0x164], eax
mov eax, dword [esp + 0x174]
mov eax, dword [esp + 0x1b0]
mov eax, dword [esp + 0x1b4]
mov eax, dword [esp + 0x174]
movups xmm0, xmmword [str.need_dictionary]
lea eax, [esp + 0x250]
mov dword [0x10010010], ecx
push eax
mov byte [esp + 0x102], 0x6c
movups xmmword [esp + 0x254], xmm0
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov byte [0x1001002d], al
mov eax, dword [esp + 0x8c]
sub al, byte [esp + 0x8c]
mov ecx, dword [esp + 0x184]
movsx eax, al
sub cl, 0x35
movsx edx, cl
mov ecx, dword [esp + 0x8c]
imul edx, eax
xor cl, 0xcb
movsx ecx, cl
movsx eax, dl
imul ecx, eax
mov ax, word [esp + 0x14]
mov eax, dword [0x10010090]
add cl, 0x6c
mov byte [esp + 0xf6], cl
mov ecx, dword [0x10010094]
mov eax, dword [0x10010098]
mov word [esp + 0x24], ax
mov al, byte [0x10010006]
movsx edx, word [0x1001009c]
mov byte [esp + 0x13], al
mov byte [esp + 0x13], 0xe6
mov al, byte [0x1001002e]
mov al, byte [0x1001002e]
mov al, byte [0x1001006c]
mov byte [esp + 0x13], al
mov eax, dword [0x10010080]
mov eax, 0xc8
mov word [esp + 0x38], ax
mov ax, word [0x1001008c]
mov eax, 0xffffe6d5
mov word [esp + 0x38], ax
mov dword [esp + 0x184], 0xad
movzx eax, word [0x10010014]
mov byte [esp + 0x20], al
mov byte [esp + 0x20], 1
mov eax, dword [0x10010028]
mov byte [esp + 0x20], 0x11
mov eax, dword [0x1001005c]
mov al, byte [section..data]
mov al, byte [0x10010007]
mov eax, dword [0x1001001c]
mov ecx, dword [0x10010098]
add eax, 0x57
mov word [esp + 0x38], ax
mov eax, ecx
xor eax, 0xd9
sub ecx, eax
mov eax, dword [0x10010028]
and eax, 0x169a
mov dword [0x10010098], ecx
mov word [0x10010068], ax
movzx eax, word [0x10010014]
cwde
movsx ecx, dx
imul eax, ecx
mov word [0x10010014], ax
mov ax, word [esp + 0x24]
movsx eax, byte [esp + 0x13]
mov dword [0x10010080], eax
mov eax, dword [0x10010080]
mov eax, dword [esp + 0x1bc]
mov eax, dword [esp + 0x1c0]
movzx eax, word [0x10010084]
mov byte [esp + 0xfa], 0x69
cmp eax, dword [0x1001006c]
jg 0x1000a4bf
movsx eax, word [0x10010014]
mov esi, dword [esp + 0x60]
mov ecx, dword [esp + 0x64]
cdq
cmp edx, ecx
jg 0x1000a4b0
jl 0x1000a480
cmp eax, esi
jae 0x1000a4b0
mov ax, word [esp + 0x28]
xor ecx, ecx
cmp word [0x10010068], cx
movzx eax, al
sete cl
xor cx, ax
mov eax, dword [esp + 0x7c]
add cx, word [0x10010020]
cbw
xor cx, ax
mov word [0x10010068], cx
jmp 0x1000a4bf
movsx eax, word [0x1001004c]
shl eax, 5
mov dword [0x10010098], eax
mov eax, dword [esp + 0xd8]
mov byte [esp + 0xfc], 0x64
mov dword [esp + 0x40], 1
mov dword [esp + 0x44], 0
mov eax, dword [esp + 0x178]
mov dl, al
shl dl, 4
sub dl, al
mov eax, dword [esp + 0x178]
mov cl, al
mov byte [esp + 0xfd], 0x6c
shl cl, 4
sub cl, al
xor cl, dl
add cl, 0x68
cmp dword [esp + 0x54], 0
mov byte [esp + 0xf5], cl
jne 0x1000a540
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x5c]
not eax
not ecx
or eax, ecx
je 0x1000a540
movsx eax, byte [0x10010006]
mov ecx, 1
sub ecx, eax
imul ecx, dword [0x10010098]
mov dword [0x10010098], ecx
movzx eax, byte [esp + 0x1b]
mov esi, dword [esp + 0x60]
mov ecx, dword [esp + 0x64]
cdq
mov byte [esp + 0xf7], 0x77
cmp edx, ecx
jg 0x1000a567
jl 0x1000a560
cmp eax, esi
ja 0x1000a567
mov ecx, 1
jmp 0x1000a569
xor ecx, ecx
mov al, 0x57
cmp al, byte [esp + 0x1b]
sbb eax, eax
inc eax
cmp ecx, eax
jae 0x1000a586
mov eax, dword [esp + 0x7c]
mov ecx, 0x2b63
cbw
sub ax, cx
jmp 0x1000a5e7
mov eax, dword [0x1001006c]
xor ecx, ecx
cmp word [0x10010048], cx
not eax
sete cl
xor edx, edx
cmp eax, ecx
setg dl
xor ecx, ecx
mov dword [esp + 0xd8], edx
movzx edx, word [esp + 0x1c]
movsx eax, word [0x1001009c]
cmp edx, eax
setge cl
cmp ecx, dword [esp + 0xd8]
je 0x1000a5ed
movzx eax, byte [0x10010004]
imul eax, eax, 0x6f
mov byte [0x1001002c], al
movzx eax, word [0x1001003c]
sub eax, dword [esp + 0x164]
sub ax, word [0x1001003c]
mov word [0x1001003c], ax
cmp word [esp + 0x160], 0
mov eax, 0x2e
mov byte [esp + 0xff], 0
mov word [esp + 0x190], ax
jne 0x1000a619
mov al, byte [0x10010003]
inc al
mov byte [0x10010003], al
mov eax, dword [esp + 0x17c]
mov esi, 0x74
add eax, dword [esp + 0x180]
sub esp, 0x38
mov ecx, dword [esp + 0x1b4]
add ecx, dword [esp + 0x1b8]
movzx eax, ax
xor ecx, eax
mov eax, esi
sub eax, ecx
mov word [esp + 0x1ce], ax
mov eax, dword [esp + 0x84]
mov eax, dword [0x10010058]
mov eax, dword [esp + 0x88]
call fcn.10001410
add esp, 0x38
mov word [0x1001004c], ax
test ax, ax
jne 0x1000a6b3
movzx eax, word [esp + 0x1c]
cmp dword [0x10010024], eax
mov ecx, dword [esp + 0x40]
mov esi, dword [esp + 0x44]
sbb eax, eax
neg eax
add eax, 0xfffffffe
cdq
sub eax, ecx
sbb edx, esi
mov esi, 0x74
or eax, edx
je 0x1000a6b3
mov dword [0x10010080], 3
mov eax, dword [esp + 0x3c]
shl eax, 4
mov dword [esp + 0x58], eax
mov edi, eax
movzx ecx, word [esp + 0x1c]
mov eax, 0x70
mov word [esp + 0x18e], ax
movzx eax, word [esp + 0x1c]
sub ecx, eax
add cx, word [0x100100a0]
mov word [esp + 0x1c], cx
mov ecx, 0xb9
movzx eax, word [0x1001008c]
sub al, 0x7f
mov byte [esp + 0xa], al
mov eax, 0x64
mov word [esp + 0x188], ax
nop word [eax + eax]
mov al, byte [section..data]
inc al
mov byte [section..data], al
sub ecx, 1
jne 0x1000a700
mov eax, dword [0x1001006c]
mov edx, 0x65
add eax, 0xffffff58
mov word [esp + 0x18a], dx
mov word [esp + 0x2c], ax
mov eax, dword [esp + 0xc4]
imul eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xc4]
imul ecx, dword [esp + 0xd0]
mov word [esp + 0x192], si
mov word [esp + 0x18c], dx
xor edx, edx
movzx eax, ax
xor ecx, eax
mov al, byte [0x100a1591]
add ecx, 0x78
mov word [esp + 0x194], cx
mov byte [esp + 0x20], al
movzx eax, word [0x10010048]
add ax, ax
mov byte [0x1001002e], 0x7a
movzx ecx, ax
movzx eax, word [esp + 0x2c]
sub cx, ax
xor eax, eax
mov word [0x10010048], cx
movzx ecx, byte [esp + 0xa]
mov word [esp + 0x198], ax
mov eax, dword [0x10010058]
cmp eax, ecx
mov eax, dword [0x10010058]
sete dl
xor ecx, ecx
cmp eax, 0x1c
sete cl
cmp edx, ecx
jne 0x1000a7f9
movzx eax, byte [0x10010017]
mov ecx, 0x58b
add ax, cx
mov word [0x10010084], ax
mov edx, dword [esp + 0x80]
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x50]
imul ecx, edx
sub eax, ecx
mov dword [esp + 0x50], eax
jmp 0x1000a81d
mov al, byte [0x1001002e]
mov ecx, 0x890
mov eax, dword [0x1001001c]
inc eax
mov dword [0x1001001c], eax
mov ax, word [0x10010084]
add ax, cx
mov word [0x10010014], ax
mov eax, dword [esp + 0xa8]
sub al, byte [esp + 0xa8]
mov ecx, dword [esp + 0x1a4]
movsx eax, al
xor cl, 0xca
movsx ecx, cl
imul ecx, eax
mov eax, dword [0x100101ec]
add eax, 0x9e
mov word [esp + 0xde], 0x456c
add word [0x10010038], ax
mov eax, dword [esp + 0x68]
add eax, edi
mov byte [esp + 0xe2], 0x72
add cl, 0x74
mov byte [esp + 0xe1], cl
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x1a8]
mov eax, dword [esp + 0xa0]
mov eax, dword [esp + 0xa0]
mov eax, dword [esp + 0xa0]
mov eax, dword [esp + 0xc0]
movzx eax, word [esp + 0x14]
mov cx, word [esp + 0x14]
movsx dx, byte [esp + 0x1a]
mov byte [esp + 0xe3], 0x79
add dx, ax
add dx, cx
mov word [esp + 0x14], dx
mov edx, 0x8963
mov si, word [esp + 0x14]
movzx eax, byte [esp + 0xa]
mov ecx, dword [esp + 0x68]
imul ecx, eax
mov eax, 0x8964
movzx ecx, cx
sub eax, ecx
sub edx, ecx
movzx ecx, ax
test si, si
movzx eax, dx
cmove ecx, eax
movzx eax, cx
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0x154]
add al, byte [esp + 0x9c]
mov ecx, dword [esp + 0x9c]
sub cl, byte [esp + 0x9c]
mov edx, dword [esp + 0xc8]
add dl, byte [esp + 0xcc]
movsx eax, al
movsx ecx, cl
imul ecx, eax
mov eax, dword [esp + 0x70]
add cl, 0x44
mov byte [esp + 0xdc], cl
mov ecx, dword [esp + 0x70]
xor cl, al
movsx eax, dl
movsx ecx, cl
imul ecx, eax
mov al, 0x6c
sub al, cl
mov byte [esp + 0xdd], al
movzx eax, word [0x1001003c]
not eax
cmp eax, 0xffffffc2
jle 0x1000a9b7
mov eax, dword [esp + 0x60]
sub esp, 0x18
mov ecx, dword [esp + 0x7c]
call fcn.10001140
add esp, 0x18
or eax, edx
je 0x1000a9a4
mov dx, word [esp + 0x28]
mov ecx, 0x1e1
nop dword [eax]
mov al, 0x3d
sub al, dl
add al, byte [0x1001002e]
mov byte [0x1001002e], al
mov ax, word [0x100100a0]
inc ax
mov word [0x100100a0], ax
sub ecx, 1
jne 0x1000a980
jmp 0x1000a9b7
cmp byte [esp + 0x7c], 0
jne 0x1000a9b0
mov eax, dword [0x10010080]
mov byte [0x1001002e], 0xb6
movsx eax, byte [0x10010006]
mov ecx, 0x247a
add ax, cx
mov byte [esp + 0xe0], 0x6e
add word [0x10010038], ax
mov eax, dword [esp + 0xb0]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x78]
xor cl, al
mov al, 0x44
sub al, cl
add dl, al
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x78]
xor cl, al
movsx eax, dl
movsx edx, cl
mov ecx, dword [esp + 0x90]
imul edx, eax
xor cl, 0x44
movsx ecx, cl
push str.SHGetFolderPathW
movsx eax, dl
imul ecx, eax
movzx eax, word [esp + 0x18]
movzx eax, al
imul eax, eax, 0x15
mov byte [esp + 0xe8], cl
add al, byte [esp + 0xe]
mov byte [esp + 0xe], al
mov eax, dword [esp + 0x40]
sub eax, edi
mov dword [esp + 0x40], eax
lea eax, [esp + 0xec]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push eax
call edi
mov ecx, dword [esp + 0x98]
add ecx, dword [esp + 0x98]
cmp ecx, dword [esp + 0x30]
je 0x1000c981
mov cl, byte [0x100101ec]
mov byte [esp + 0x1b], cl
lea ecx, [esp + 0x268]
push ecx
push 0
push 0
push 0x1a
push 0
call eax
test eax, eax
js 0x1000c981
mov esi, 0x4f
mov al, byte [0x10010003]
sub esp, 8
mov eax, dword [esp + 0x70]
call fcn.100012e0
cwde
xor ecx, ecx
mov dword [0x1001001c], eax
add esp, 8
mov eax, dword [0x1001001c]
cmp eax, 0x23
mov eax, dword [0x1001001c]
setge cl
not eax
shr eax, 0x1f
cmp eax, ecx
jne 0x1000aadc
mov cl, byte [esp + 0xb]
sub cl, byte [0x10010030]
mov al, byte [esp + 0xb]
sub cl, al
mov byte [esp + 0xb], cl
add dword [0x10010030], 1
adc dword [0x10010034], 0
sub esi, 1
jne 0x1000aa93
mov eax, dword [0x100101ec]
sub esp, 8
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
add eax, 0x29f
mov dword [esp + 0x80], eax
call fcn.10001000
movzx eax, al
add esp, 8
mov word [esp + 0x14], ax
cmp word [0x1001008c], si
jne 0x1000aba9
cmp dword [esp + 0x4c], esi
je 0x1000ab33
mov eax, dword [0x10010024]
mov eax, dword [esp + 0x54]
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x64]
cmp byte [0x10010001], 0
je 0x1000ab57
mov al, byte [0x100101ec]
mov byte [0x10010002], al
jmp 0x1000abd7
cmp byte [esp + 0x20], 0
je 0x1000ab8d
movzx eax, word [0x10010084]
movzx edx, byte [0x10010017]
not eax
mov ecx, dword [esp + 0x40]
imul edx, eax
mov eax, dword [esp + 0x44]
mov al, byte [0x10010038]
xor ecx, edx
mov dword [0x1001001c], ecx
mov byte [0x10010007], al
jmp 0x1000abd7
cmp dword [esp + 0x68], 0
je 0x1000abd7
movzx ecx, word [0x1001003c]
mov eax, dword [esp + 0x54]
xor eax, ecx
mov word [0x1001003c], ax
jmp 0x1000abd7
movzx ecx, word [esp + 0x2c]
movsx eax, word [0x10010088]
cmp ecx, eax
jne 0x1000abbf
mov al, byte [esp + 0xa]
jmp 0x1000abd7
movzx eax, word [0x10010004]
movzx ecx, word [0x10010030]
imul ecx, eax
mov word [0x10010004], cx
mov eax, dword [esp + 0xc]
add eax, 0x148
mov dword [esp + 0x90], eax
mov eax, dword [0x100101ec]
mov dword [esp + 0x9c], eax
movsx eax, byte [esp + 0x20]
mov ecx, dword [esp + 0x4c]
sub ecx, eax
mov eax, dword [0x1001001c]
add eax, ecx
cdq
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], edx
mov eax, dword [esp + 0xc]
add eax, 0x204
mov dword [esp + 0x30], eax
lea eax, [esp + 0xf4]
push str.PathAppendW
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push eax
call edi
lea ecx, [esp + 0x188]
push ecx
lea ecx, [esp + 0x26c]
push ecx
call eax
mov ax, word [esp + 0x1c]
add ax, word [0x10037918]
mov word [esp + 0x1c], ax
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x54]
inc ecx
mov edx, dword [0x10010078]
add eax, ecx
movzx ecx, byte [0x1001002d]
add cx, word [0x10010060]
movzx eax, ax
xor cx, ax
mov eax, dword [0x1001007c]
movzx ecx, cx
xor dx, cx
lea ecx, [esp + 0x268]
mov word [esp + 0x1c], dx
lea edx, [esp + 0x1a0]
call fcn.10004c30
mov dword [esp + 0xa4], eax
test eax, eax
je 0x1000c981
mov cl, byte [esp + 0xa]
sub esp, 8
mov cl, byte [esp + 0x12]
call fcn.100012e0
add esp, 8
test ax, ax
je 0x1000ad11
movsx eax, word [0x10010088]
cmp dword [esp + 0x68], eax
jne 0x1000acea
movzx eax, byte [0x1001002c]
mov ecx, 0x2ff5
and ax, cx
mov word [0x1001003c], ax
jmp 0x1000ad94
movzx ecx, word [0x10010084]
movsx eax, word [0x10010068]
cmp ecx, eax
jge 0x1000ad01
mov eax, dword [0x1001001c]
mov ax, word [esp + 0x14]
mov word [0x100a5db0], ax
jmp 0x1000ad94
cmp byte [0x10010002], 0
je 0x1000ad4b
movsx eax, word [0x1001009c]
mov ecx, dword [0x10010010]
xor eax, 0xdebb3217
mov dword [0x10010030], eax
xor ecx, 0x7a
movzx eax, byte [esp + 0xa]
add eax, ecx
mov dword [0x10010034], 0
mov dword [esp + 0x50], eax
jmp 0x1000ad94
cmp dword [0x10010010], 0
je 0x1000ad7b
mov eax, dword [esp + 0xc0]
mov ecx, dword [0x10010030]
mov word [0x10010084], ax
mov eax, dword [0x10010034]
shld eax, ecx, 4
shl ecx, 4
mov dword [0x1001001c], ecx
jmp 0x1000ad94
mov ax, word [esp + 0x28]
add byte [0x10010006], al
mov eax, dword [0x10010030]
add eax, 0x665fc040
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0xa4]
push ecx
push eax
push dword [esp + 0x1a8]
lea ecx, [esp + 0x11c]
mov dword [esp + 0x11c], 0xc15561f3
push eax
mov dword [esp + 0x124], 0xbaba8f0e
mov dword [esp + 0x128], 0x6a4d7254
mov dword [esp + 0x12c], 0xef0247d7
mov dword [esp + 0x130], 0x11dfdb66
mov dword [esp + 0x134], 0x518b66d0
mov dword [esp + 0x138], 0x89189732
mov dword [esp + 0x13c], 0x73dbbd03
mov dword [esp + 0x140], 0xb7963fcb
mov dword [esp + 0x144], 0x29818e24
mov dword [esp + 0x148], 0x836fd5f5
mov dword [esp + 0x14c], 0x5539fd97
mov dword [esp + 0x150], 0xc8c25827
mov dword [esp + 0x154], 0xff068c05
mov dword [esp + 0x158], 0x6add6cee
mov dword [esp + 0x15c], 0xb0ee582b
call fcn.100037c0
mov eax, dword [0x10010098]
add esp, 0x10
mov word [esp + 0x24], ax
mov al, byte [0x10010006]
mov byte [esp + 0x13], al
movsx edx, word [0x1001009c]
mov byte [esp + 0x13], 0xe6
mov al, byte [0x1001002e]
mov al, byte [0x1001002e]
mov al, byte [0x1001006c]
mov byte [esp + 0x13], al
mov eax, dword [0x10010080]
mov eax, 0xc8
mov word [esp + 0x38], ax
mov ax, word [0x1001008c]
mov eax, 0xffffe6d5
mov word [esp + 0x38], ax
mov dword [esp + 0xb0], 0xad
movzx eax, word [0x10010014]
mov byte [esp + 0xb], al
mov byte [esp + 0xb], 1
mov eax, dword [0x10010028]
mov byte [esp + 0xb], 0x11
mov eax, dword [0x1001005c]
mov al, byte [section..data]
mov al, byte [0x10010007]
mov eax, dword [0x1001001c]
mov ecx, dword [0x10010098]
add eax, 0x57
mov word [esp + 0x38], ax
mov eax, ecx
xor eax, 0xd9
sub ecx, eax
mov eax, dword [0x10010028]
and eax, 0x169a
mov dword [0x10010098], ecx
mov word [0x10010068], ax
movzx eax, word [0x10010014]
cwde
movsx ecx, dx
imul eax, ecx
mov word [0x10010014], ax
mov ax, word [esp + 0x24]
movsx eax, byte [esp + 0x13]
mov dword [0x10010020], eax
test eax, eax
je 0x1000af50
mov al, byte [0x10010002]
dec al
mov byte [0x10010002], al
jmp 0x1000af7f
mov eax, dword [esp + 0x3c]
shl eax, 4
mov word [0x10010038], ax
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x84]
add eax, 1
mov dword [esp + 0x80], eax
adc ecx, 0
mov dword [esp + 0x84], ecx
mov eax, dword [esp + 0x78]
sub eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x30]
add ecx, eax
mov eax, dword [esp + 0x90]
imul eax, dword [esp + 0x78]
cmp ecx, eax
je 0x1000c945
mov eax, dword [esp + 0xa4]
mov ecx, 0x5a4d
cmp cx, word [eax]
jne 0x1000c945
cmp word [0x100100a4], 0
je 0x1000b00a
movups xmm0, xmmword [str.Output_of_signing]
mov eax, dword [0x1000f1e0]
mov dword [esp + 0x240], eax
mov ax, word [0x1000f1e4]
movups xmmword [esp + 0x220], xmm0
mov word [esp + 0x244], ax
lea eax, [esp + 0x220]
movups xmm0, xmmword [0x1000f1d0]
push eax
movups xmmword [esp + 0x234], xmm0
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov byte [esp + 0xa], al
mov eax, dword [0x100101ec]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add eax, 0x39c
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 0x4c]
movzx eax, byte [0x1001002c]
sub ecx, eax
mov eax, dword [esp + 0x4c]
sub ecx, eax
mov dword [esp + 0x4c], ecx
mov eax, dword [esp + 0xc]
movsx cx, byte [0x1001001b]
add eax, 0x1bc
mov dword [esp + 0x70], eax
mov eax, 0x851f
movzx ecx, cx
imul ecx, eax
movzx eax, cx
mov dword [esp + 0x30], eax
movsx eax, word [0x1001004c]
and eax, 0xe80ffff6
mov dword [0x10010058], eax
mov eax, dword [esp + 0xc]
add eax, 0x215
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x70]
imul eax, dword [esp + 0x70]
cmp eax, 0x12f
je 0x1000c945
movsx eax, byte [esp + 0x20]
mov ecx, dword [esp + 0x80]
mov esi, dword [esp + 0x84]
cdq
add ecx, eax
mov dword [esp + 0xbc], 0x3a
mov dword [esp + 0x80], ecx
adc esi, edx
mov dword [esp + 0x98], 0
mov dword [esp + 0x84], esi
mov ecx, dword [0x10010078]
mov eax, dword [0x1001007c]
add cl, 0x32
mov eax, dword [0x100101ec]
mov byte [0x1001002e], cl
mov ecx, 0xc5
mov dword [esp + 0xc], eax
movzx eax, byte [0x10010014]
imul eax, eax, 0xbb
mov byte [esp + 0xb], al
movzx eax, byte [0x1001002c]
sub ax, cx
movzx ecx, ax
movzx edi, ax
mov eax, dword [esp + 0xc]
add eax, 0x31f
movsx edx, word [0x1001009c]
mov dword [esp + 0x90], eax
mov eax, dword [0x10010098]
mov word [esp + 0x24], ax
mov al, byte [0x10010006]
mov byte [esp + 0x13], al
mov byte [esp + 0x13], 0xe6
mov al, byte [0x1001002e]
mov al, byte [0x1001002e]
mov al, byte [0x1001006c]
mov byte [esp + 0x13], al
mov eax, dword [0x10010080]
mov eax, 0xc8
mov dword [esp + 0xb0], ecx
mov word [esp + 0x38], ax
mov ax, word [0x1001008c]
mov eax, 0xffffe6d5
mov dword [esp + 0x154], edi
mov word [esp + 0x38], ax
mov dword [esp + 0x90], 0xad
movzx eax, word [0x10010014]
mov byte [esp + 0x28], al
mov byte [esp + 0x28], 1
mov eax, dword [0x10010028]
mov byte [esp + 0x28], 0x11
mov eax, dword [0x1001005c]
mov al, byte [section..data]
mov al, byte [0x10010007]
mov eax, dword [0x1001001c]
mov ecx, dword [0x10010098]
add eax, 0x57
mov word [esp + 0x38], ax
mov eax, ecx
xor eax, 0xd9
sub ecx, eax
mov eax, dword [0x10010028]
and eax, 0x169a
mov dword [0x10010098], ecx
mov word [0x10010068], ax
movzx eax, word [0x10010014]
cwde
movsx ecx, dx
imul eax, ecx
mov ecx, dword [esp + 0xa4]
mov word [0x10010014], ax
mov ax, word [esp + 0x24]
mov eax, dword [esp + 0xc]
add eax, 0x33
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0xc]
add eax, 0x286
mov dword [esp + 0x90], eax
mov eax, dword [ecx + 0x3c]
add eax, ecx
mov dword [esp + 0x78], eax
cmp dword [eax], 0x4550
jne 0x1000c945
mov esi, dword [esp + 0x30]
mov ax, si
shr ax, 3
movzx eax, ax
cdq
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], edx
cmp word [esp + 0x1c], 0
jne 0x1000b270
mov ecx, dword [0x1001005c]
add ecx, dword [0x1001005c]
mov eax, dword [esp + 0x3c]
add eax, ecx
mov dword [0x1001005c], eax
mov eax, dword [0x100101ec]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x5c]
add eax, 0x287
mov dword [esp + 0x30], eax
test si, si
je 0x1000b2d9
mov eax, dword [esp + 0x3c]
xor ecx, ecx
cmp eax, dword [0x10010008]
jne 0x1000b2cc
cmp ecx, dword [0x1001000c]
jne 0x1000b2cc
cmp byte [0x1001002c], cl
je 0x1000b2af
cmp byte [esp + 0x20], cl
jne 0x1000b2c2
cmp byte [0x10010017], cl
jne 0x1000b2c2
mov eax, dword [0x10010078]
mov ecx, dword [0x1001007c]
movzx eax, di
mov dword [0x10010010], eax
jmp 0x1000b2e0
mov eax, dword [0x100101ec]
mov word [0x10010018], ax
jmp 0x1000b2e0
mov byte [0x1001002e], 0x45
mov eax, dword [esp + 0x5c]
add eax, 0x2b2
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x5c]
add eax, 0x109
mov dword [esp + 0x70], eax
mov ecx, dword [esp + 0xc]
imul ecx, dword [esp + 0x30]
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0xc]
sub ecx, eax
add edx, ecx
mov ecx, dword [esp + 0x70]
imul ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x70]
add eax, ecx
cmp edx, eax
je 0x1000c945
movzx eax, word [esp + 0x1c]
mov dword [0x10010024], eax
mov ecx, dword [0x10010090]
mov eax, dword [0x10010094]
or ecx, eax
jne 0x1000b344
lea eax, [ecx + 1]
jmp 0x1000b346
xor eax, eax
mov ecx, dword [0x10010008]
mov edx, 0x181
mov word [0x10010070], ax
mov eax, dword [0x100101ec]
mov byte [0x1001002e], 0x99
mov dword [esp + 0xc], eax
mov eax, dword [0x1001000c]
nop dword [eax]
add ecx, 1
adc eax, 0
sub edx, 1
jne 0x1000b370
mov dword [0x1001000c], eax
mov eax, dword [esp + 0xc]
add eax, 0x39e
mov dword [0x10010008], ecx
mov dword [esp + 0xc8], eax
movzx ecx, byte [esp + 0xb]
movzx eax, byte [0x1001002c]
not ecx
sub eax, ecx
add eax, 0x18b0e509
cdq
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], edx
movzx ecx, word [0x1001008c]
movsx eax, byte [0x1001001a]
add ecx, 0x86b50f26
imul edx, eax, 0x600465a4
movsx eax, byte [0x10010006]
add eax, dword [0x10010010]
add eax, ecx
push str.VirtualAlloc
xor edx, dword [esp + 0x70]
not edx
imul edx, eax
mov eax, dword [esp + 0x10]
add eax, 0x25c
mov dword [esp + 0xd0], eax
mov eax, dword [esp + 0x10]
add eax, 0x2b3
mov dword [esp + 0xa4], edx
mov dword [esp + 0xc8], eax
mov eax, dword [0x100101ec]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
movzx ecx, word [0x10010004]
add eax, 0x72
movzx edx, byte [0x1001008c]
test cx, cx
mov dword [esp + 0x8c], eax
movzx eax, cl
cmovne edx, eax
mov byte [esp + 0xf], dl
mov dword [0x1001001c], 0xed839cfc
mov eax, dword [esp + 0x10]
add eax, 0xeb
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x10]
add eax, 0x1d7
mov dword [esp + 0x34], eax
mov al, byte [0x10010002]
mov ecx, dword [0x10010028]
cbw
movzx ecx, cx
movzx eax, ax
imul ecx, eax
movzx eax, cx
mov ecx, dword [esp + 0x6c]
imul ecx, eax
mov eax, dword [0x1001005c]
add ecx, esi
movzx ecx, cx
sub ecx, eax
movzx eax, cx
mov ecx, dword [esp + 0x54]
add ecx, eax
lea eax, [esp + 0x104]
push eax
mov word [0x100100a4], cx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
sub esp, 8
mov dword [esp + 0x38], eax
call fcn.10001000
movzx eax, al
add esp, 8
cdq
mov edi, eax
mov dword [0x1001000c], edx
mov dword [0x10010008], edi
mov ecx, edi
or ecx, edx
jne 0x1000b4eb
lea eax, [ecx + 1]
jmp 0x1000b4f6
xor eax, eax
cmp edi, 0xa
jne 0x1000b4f6
test edx, edx
je 0x1000b51b
test eax, eax
jne 0x1000b51b
mov edx, dword [0x10010078]
mov eax, dword [0x1001007c]
mov ecx, dword [esp + 0x80]
mov eax, dword [esp + 0x84]
add cl, dl
mov byte [esp + 0x20], cl
jmp 0x1000b577
mov ax, word [0x10010070]
sub esp, 0x38
call fcn.10001410
movzx esi, ax
add esp, 0x38
mov ax, 0xa
cmp ax, si
sbb ecx, ecx
xor ax, ax
inc ecx
cmp ax, si
sbb eax, eax
inc eax
cmp eax, ecx
jne 0x1000b577
mov ax, word [0x1000f200]
movq xmm0, qword [str.Operation]
mov word [esp + 0x1cc], ax
lea eax, [esp + 0x1c4]
push eax
movq qword [esp + 0x1c8], xmm0
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov byte [esp + 0xb], al
mov eax, dword [esp + 0x78]
push 0x40
push 0x3000
push dword [eax + 0x50]
push 0
call dword [esp + 0x40]
imul ecx, dword [esp + 0x90], 0x301
mov edx, 0x399
mov edi, eax
mov dword [esp + 0x74], edi
sub edx, ecx
mov ecx, dword [esp + 0xa8]
imul ecx, dword [esp + 0xa8]
cmp edx, ecx
je 0x1000c945
movzx eax, word [0x10010084]
cmp dword [esp + 0xa0], eax
jg 0x1000b619
mov eax, dword [0x10010030]
or eax, dword [0x10010034]
je 0x1000b619
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
mov cl, byte [0x10010003]
mov al, byte [esp + 0x20]
add cl, dl
add al, cl
mov byte [0x10010003], al
jne 0x1000b5fd
mov eax, 1
xor ecx, ecx
jmp 0x1000b60e
xorps xmm0, xmm0
movlpd qword [esp + 0x30], xmm0
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
mov dword [0x10010090], eax
mov dword [0x10010094], ecx
movsx eax, word [0x10010068]
cdq
xor eax, 0x8964
xor edx, 0
mov dword [0x10010090], eax
mov eax, dword [0x100101ec]
mov dword [0x10010094], edx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x4c]
cdq
add eax, 0xc9a7600a
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0xc]
adc edx, 0xb878f
add eax, 0xa8
mov dword [esp + 0x58], edx
mov dword [esp + 0x30], eax
xor edx, edx
mov ecx, dword [0x10010058]
mov eax, dword [esp + 0x3c]
cmp eax, ecx
mov eax, dword [esp + 0x3c]
sete dl
xor ecx, ecx
cmp eax, 0x60
sete cl
cmp edx, ecx
jae 0x1000b6aa
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x80]
add eax, eax
mov word [0x1001004c], ax
mov eax, dword [esp + 0x84]
imul eax, ecx, 0x27
mov dword [0x1001001c], eax
jmp 0x1000b6be
mov ecx, dword [esp + 0x3c]
mov al, byte [esp + 0xa]
sub ecx, 0xc3da419
and al, cl
mov byte [esp + 0xa], al
mov eax, dword [esp + 0xc]
add eax, 0x1b9
mov dword [esp + 0xd0], eax
mov eax, dword [esp + 0xc]
add eax, 0x38c
mov dword [esp + 0xc], eax
test edi, edi
je 0x1000c945
mov ax, word [0x1001003c]
movzx ecx, byte [0x10010040]
movzx eax, al
imul eax, ecx
mov cl, byte [esp + 0xa]
add cl, al
mov eax, dword [esp + 0xb0]
movzx eax, ax
cdq
mov byte [0x1001002d], cl
cmp dword [0x10010040], eax
jne 0x1000b7e8
cmp dword [0x10010044], edx
jne 0x1000b7e8
cmp word [esp + 0x2c], 0
je 0x1000b7ba
cmp byte [0x1001001b], 0
jne 0x1000b74f
mov dword [esp + 0xa8], 1
mov dword [esp + 0x70], 0
jmp 0x1000b774
xorps xmm0, xmm0
movlpd qword [esp + 0x90], xmm0
mov eax, dword [esp + 0x94]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0xa8], eax
mov esi, dword [0x10010090]
mov ecx, dword [0x10010094]
movsx eax, word [0x10010068]
push dword [esp + 0x70]
cdq
push dword [esp + 0xac]
sub esi, eax
not esi
sbb ecx, edx
not ecx
push ecx
push esi
call fcn.1000e090
mov ecx, eax
mov esi, edx
movzx eax, word [esp + 0x1c]
cdq
sub ecx, eax
mov dword [esp + 0x40], ecx
sbb esi, edx
mov dword [esp + 0x44], esi
jmp 0x1000b835
mov ax, word [0x1001008c]
mov byte [0x100ca086], al
movzx eax, word [0x10010070]
cdq
sub eax, 0xe83d81e3
mov dword [esp + 0x80], eax
sbb edx, 0x87766
mov dword [esp + 0x84], edx
jmp 0x1000b835
test cl, cl
je 0x1000b805
movzx ecx, word [0x10010084]
inc ecx
movzx eax, si
add ecx, dword [0x10010098]
add eax, ecx
mov dword [esp + 0x68], eax
jmp 0x1000b835
cmp byte [0x10010003], 0
je 0x1000b81a
mov ax, word [esp + 0x2c]
mov byte [0x100ca551], al
jmp 0x1000b835
cmp word [0x1001004c], 0
je 0x1000b835
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
add cx, 0x54
mov word [esp + 0x1c], cx
mov eax, dword [0x100101ec]
sub esp, 8
mov dword [esp + 0x64], eax
mov al, byte [0x1001002e]
movsx ecx, word [esp + 0x1c]
add al, 0x70
mov byte [0x1001002d], al
mov ax, word [esp + 0x1c]
add ax, word [esp + 0xa4]
add ax, cx
mov word [esp + 0x1c], ax
mov eax, dword [esp + 0x64]
add eax, 0x22
mov dword [esp + 0x98], eax
movzx eax, byte [esp + 0x1b]
mov word [0x100b1f92], ax
mov eax, dword [esp + 0x64]
add eax, 0xb494
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x5c]
call fcn.10001000
movzx eax, al
add esp, 8
mov word [0x10010014], ax
cmp word [0x10010014], 0
je 0x1000b8b8
mov eax, dword [0x100101ec]
mov dword [0x1001005c], eax
jmp 0x1000b8bc
mov al, byte [esp + 0xb]
mov eax, dword [esp + 0x5c]
sub esp, 0x38
add eax, 0x52
mov dword [esp + 0xc8], eax
mov al, byte [esp + 0x53]
sub al, 0x6e
mov byte [0x1001001a], al
mov al, byte [0x1001002e]
call fcn.10001410
add esp, 0x38
mov byte [0x1001002c], al
test al, al
je 0x1000b927
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
or ecx, eax
jne 0x1000b901
mov ecx, 1
jmp 0x1000b903
xor ecx, ecx
movsx eax, byte [0x10010006]
imul eax, ecx
not eax
mov dword [esp + 0x4c], eax
movzx eax, byte [0x10010064]
imul eax, eax, 0x8b
mov byte [0x10010017], al
jmp 0x1000b96e
mov eax, dword [esp + 0x4c]
cmp eax, dword [esp + 0x54]
jbe 0x1000b96e
mov ax, word [esp + 0x2c]
mov ecx, 0x5b19
add ax, cx
mov word [0x10010048], ax
movzx eax, word [esp + 0x1c]
mov esi, dword [esp + 0x40]
mov edi, dword [esp + 0x44]
cdq
xor esi, eax
xor edi, edx
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
sub eax, esi
mov dword [esp + 0x40], eax
sbb ecx, edi
mov edi, dword [esp + 0x74]
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0xd0]
xor ecx, dword [esp + 0x30]
mov eax, dword [esp + 0xd0]
sub ecx, eax
mov eax, dword [esp + 0xc]
add eax, ecx
mov ecx, dword [esp + 0xc]
sub ecx, dword [esp + 0xc]
mov edx, dword [esp + 0xc]
imul ecx, eax
add edx, 0x3a8
imul edx, ecx
mov ecx, dword [esp + 0x70]
mov eax, dword [esp + 0x70]
or ecx, 0x6f2f
imul eax, ecx
imul eax, eax, 0x9b
xor eax, 0x39d94364
add eax, edx
cmp dword [0x10010034], 0xfffca6bb
mov dword [esp + 0x90], eax
jl 0x1000b9e6
jg 0x1000b9df
cmp dword [0x10010030], 0xca003a62
jbe 0x1000b9e6
mov eax, 0xff7c56cf
jmp 0x1000b9e9
or eax, 0xffffffff
cmp eax, dword [esp + 0x4c]
jg 0x1000ba10
mov al, byte [0x10010001]
mov byte [0x100b901c], al
mov eax, dword [0x100101ec]
mov dword [esp + 0xbc], eax
mov dword [esp + 0x98], 0
mov ecx, dword [esp + 0x7c]
movsx eax, cl
mov dword [esp + 0x30], eax
movsx eax, cl
cdq
mov dword [0x10010090], eax
mov eax, dword [esp + 0x78]
mov dword [0x10010094], edx
movsx edx, word [0x1001009c]
movzx esi, word [eax + 6]
mov eax, dword [0x10010098]
mov word [esp + 0x24], ax
mov al, byte [0x10010006]
mov byte [esp + 0x28], al
mov byte [esp + 0x28], 0xe6
mov al, byte [0x1001002e]
mov al, byte [0x1001002e]
mov al, byte [0x1001006c]
mov byte [esp + 0x13], al
mov eax, dword [0x10010080]
mov eax, 0xc8
mov dword [esp + 0x5c], esi
mov word [esp + 0x38], ax
mov ax, word [0x1001008c]
mov eax, 0xffffe6d5
mov word [esp + 0x38], ax
mov dword [esp + 0xb0], 0xad
movzx eax, word [0x10010014]
mov byte [esp + 0x28], al
mov byte [esp + 0x28], 1
mov eax, dword [0x10010028]
mov byte [esp + 0x28], 0x11
mov eax, dword [0x1001005c]
mov al, byte [section..data]
mov al, byte [0x10010007]
mov eax, dword [0x1001001c]
mov ecx, dword [0x10010098]
add eax, 0x57
mov word [esp + 0x38], ax
mov eax, ecx
xor eax, 0xd9
sub ecx, eax
mov eax, dword [0x10010028]
and eax, 0x169a
mov dword [0x10010098], ecx
mov word [0x10010068], ax
movzx eax, word [0x10010014]
cwde
movsx ecx, dx
imul eax, ecx
mov word [0x10010014], ax
mov ax, word [esp + 0x24]
mov al, byte [esp + 0x13]
mov byte [0x10010003], al
cmp byte [0x10010003], 0
je 0x1000bb3a
mov eax, dword [esp + 0x6c]
or eax, 0
jne 0x1000bb53
mov eax, 0xd7ba
mov word [0x10010084], ax
movzx eax, byte [esp + 0xa]
shl eax, 5
mov dword [esp + 0x3c], eax
jmp 0x1000bb53
cmp word [0x1001008c], 0
jne 0x1000bb53
mov ax, word [0x10010070]
neg ax
mov word [0x10010038], ax
mov ecx, dword [esp + 0x78]
movsx edx, word [0x1001009c]
movzx eax, word [ecx + 0x14]
add eax, ecx
mov dword [esp + 0xb0], eax
mov eax, dword [0x10010098]
mov word [esp + 0x24], ax
mov al, byte [0x10010006]
mov byte [esp + 0x28], al
mov byte [esp + 0x28], 0xe6
mov al, byte [0x1001002e]
mov al, byte [0x1001002e]
mov al, byte [0x1001006c]
mov dword [esp + 0xc], eax
mov eax, dword [0x10010080]
mov eax, 0xc8
mov word [esp + 0x38], ax
mov ax, word [0x1001008c]
mov eax, 0xffffe6d5
mov word [esp + 0x38], ax
mov dword [esp + 0xc0], 0xad
movzx eax, word [0x10010014]
mov byte [esp + 0x28], al
mov byte [esp + 0x28], 1
mov eax, dword [0x10010028]
mov byte [esp + 0x28], 0x11
mov eax, dword [0x1001005c]
mov al, byte [section..data]
mov al, byte [0x10010007]
mov eax, dword [0x1001001c]
mov ecx, dword [0x10010098]
add eax, 0x57
mov word [esp + 0x38], ax
mov eax, ecx
xor eax, 0xd9
sub ecx, eax
mov eax, dword [0x10010028]
and eax, 0x169a
mov dword [0x10010098], ecx
mov word [0x10010068], ax
movzx eax, word [0x10010014]
cwde
movsx ecx, dx
imul eax, ecx
mov word [0x10010014], ax
mov ax, word [esp + 0x24]
movzx ecx, word [esp + 0x1c]
movsx eax, byte [0x10010006]
cmp eax, ecx
jg 0x1000bc6a
mov eax, dword [esp + 0x9c]
mov ecx, 0x26e2
sub eax, dword [esp + 0x30]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0xc]
movzx eax, al
add ax, cx
mov word [esp + 0x14], ax
mov eax, dword [esp + 0x78]
mov ecx, edi
mov edx, dword [esp + 0xa4]
push dword [eax + 0x54]
call fcn.10008060
mov ecx, dword [esp + 0xc8]
add esp, 4
add ecx, dword [esp + 0xcc]
mov eax, dword [esp + 0xc4]
sub eax, dword [esp + 0xc8]
imul eax, ecx
cmp eax, 0x191
je 0x1000c37b
mov al, byte [0x100101ec]
mov ecx, 0xffff87a9
mov edi, dword [esp + 0xa0]
mov dword [esp + 0xc], eax
mov eax, dword [0x10010024]
imul eax, edi
imul eax, eax, 0xbedc
not eax
mov word [0x10010070], ax
mov ax, word [0x10010014]
sub cx, ax
movzx eax, cx
mov cx, word [0x10010014]
add cx, ax
mov eax, dword [0x100101ec]
mov word [0x10010014], cx
mov dword [esp + 0x8c], eax
mov eax, 0xffff
add word [0x10010004], ax
mov eax, dword [esp + 0x8c]
add eax, 0x52
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x154]
shr eax, 4
mov byte [esp + 0xb], 1
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x8c]
add eax, 0x38c5
mov dword [esp + 0x30], eax
cmp byte [0x10010007], 0
je 0x1000bd4d
mov eax, dword [0x10010028]
jmp 0x1000bd52
mov eax, dword [0x10010080]
mov dword [esp + 0x68], eax
sub esp, 0x38
mov eax, dword [esp + 0xc4]
add eax, 0xa5df
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0x84]
call fcn.10001410
mov ecx, eax
add esp, 0x38
mov eax, edx
mov dword [esp + 0x8c], ecx
or ecx, eax
mov dword [esp + 0x58], eax
je 0x1000c003
mov eax, dword [esp + 0x4c]
mov esi, dword [esp + 0x74]
sub al, 0x7e
mov byte [0x10010017], al
mov edx, esi
mov eax, dword [esp + 0x78]
mov ecx, esi
sub edx, dword [eax + 0x34]
call fcn.10004700
movzx eax, byte [esp + 0xa]
mov ecx, dword [esp + 0x54]
xor ecx, eax
mov al, byte [esp + 0xa]
push dword [0x1001000c]
mov edi, dword [esi + 0x3c]
sub al, cl
push dword [0x10010008]
mov byte [esp + 0x12], al
add edi, esi
movsx eax, word [0x10010038]
cdq
add eax, 1
adc edx, 0
push edx
push eax
call fcn.1000e090
mov ecx, dword [0x10010030]
mov esi, dword [0x10010034]
mov dword [0x10010008], eax
mov eax, dword [edi + 0x84]
mov dword [esp + 0x30], eax
movzx eax, byte [esp + 0xb]
shld esi, ecx, 1
mov dword [0x1001000c], edx
cdq
add ecx, ecx
add eax, ecx
mov ecx, dword [esp + 0x88]
mov dword [0x10010030], eax
mov eax, dword [esp + 0x88]
adc edx, esi
add eax, 0x37d
mov dword [0x10010034], edx
mov edx, dword [edi + 0x80]
add ecx, eax
imul eax, dword [esp + 0x88], 0x262
add edx, dword [esp + 0x74]
mov dword [esp + 0x90], edx
cmp eax, ecx
je 0x1000c92f
test edx, edx
je 0x1000c92f
mov ecx, dword [esp + 0x74]
lea edx, [esp + 0xdc]
call fcn.100061f0
push 0
push 0
call eax
mov ecx, dword [esp + 0x68]
push dword [esp + 0xa4]
add ecx, 0xadf0
mov dword [0x1001000c], 0
mov dword [0x10010064], ecx
mov ecx, dword [0x100101ec]
push 0
mov dword [0x10010008], ecx
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
pop edi
mov eax, 1
pop esi
mov esp, ebp
pop ebp
ret 8