Function at 0x100064f0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0xc8
push esi
push edi
push str.DoGetToken_Info
push str.DoGetToken_Info
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
mov dword [0x10082928], eax
mov eax, dword [0x10011070]
mov dword [esp + 0x38], 0x2c06
mov dword [esp + 0x74], 0xe922579e
movzx ecx, ax
mov byte [esp + 0xf], 0x72
mov dword [esp + 0x48], eax
mov eax, dword [0x10011098]
mov byte [esp + 0x12], 0xe3
mov dword [esp + 0x58], ecx
mov ecx, dword [0x1001109c]
mov dword [esp + 0x68], eax
mov al, byte [0x100110ac]
mov dword [esp + 0x6c], ecx
mov ecx, dword [0x10011018]
mov byte [esp + 0x1b], al
mov eax, dword [0x1001101c]
mov eax, 0x9e11
movzx edi, cx
mov word [esp + 0x1c], ax
mov al, byte [0x100110ac]
mov byte [esp + 0x10], al
mov dword [esp + 0x98], ecx
mov ecx, dword [0x10011040]
mov eax, dword [0x10011044]
movzx eax, cx
mov dword [esp + 0x50], eax
mov ax, word [0x100110b4]
mov word [esp + 0x20], ax
mov eax, dword [0x10011038]
mov esi, dword [section..data]
mov dword [esp + 0x78], eax
mov eax, dword [0x10011004]
movzx eax, si
mov dword [esp + 0x70], eax
mov al, byte [0x10011050]
mov byte [esp + 0x13], al
mov eax, 0x76ae
mov byte [esp + 0x11], 0x14
mov word [esp + 0x24], ax
mov eax, dword [0x1001107c]
mov dword [esp + 0x14], eax
mov eax, dword [0x10011098]
mov word [esp + 0x28], ax
mov al, byte [0x10011010]
mov al, byte [0x100110c0]
mov byte [esp + 0x1a], al
mov eax, dword [0x100110a8]
cdq
mov dword [esp + 0x4c], 0x2ae2
mov dword [esp + 0x88], 0
mov dword [esp + 0x84], edi
mov dword [esp + 0x8c], 0x3e61
mov dword [esp + 0x90], esi
mov dword [esp + 0x54], 0x6ab06032
mov dword [esp + 0x5c], 0
cmp dword [0x10011098], eax
jne 0x10006644
cmp dword [0x1001109c], edx
je 0x1000667f
mov ax, word [0x100100f4]
movups xmm0, xmmword [str.api_ms_win_core_er]
mov word [esp + 0xc0], ax
mov al, byte [0x100100f6]
mov byte [esp + 0xc2], al
lea eax, [esp + 0xb0]
push eax
movups xmmword [esp + 0xb4], xmm0
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [esp + 0x54], eax
mov ecx, dword [0x10082928]
mov dword [esp + 0x2c], ecx
movsx ecx, byte [esp + 0x10]
cmp dword [0x10011020], ecx
mov al, byte [esp + 0x10]
sbb edx, edx
xor ecx, ecx
inc edx
cmp al, 0x1e
setle cl
cmp edx, ecx
jbe 0x100066f3
movsx ax, byte [0x10011017]
cmp word [esp + 0x20], ax
jne 0x100066cb
movzx eax, byte [0x10011013]
mov ecx, 0x541e
sub ax, cx
mov word [esp + 0x24], ax
jmp 0x1000672e
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
mov ecx, dword [0x10011018]
mov eax, dword [0x1001101c]
mov word [esp + 0x20], cx
movzx eax, byte [esp + 0x13]
add eax, 0x6f077283
mov dword [esp + 0x54], eax
jmp 0x1000672e
cmp dword [0x1001102c], 0
je 0x10006703
mov ax, word [esp + 0x1c]
jmp 0x10006705
mov al, 0x4d
mov ecx, dword [0x10011070]
mov byte [esp + 0x10], al
mov eax, dword [esp + 0x98]
movzx eax, ax
cdq
sub ecx, eax
mov eax, dword [0x10011074]
mov dword [0x10011080], ecx
sbb eax, edx
mov dword [0x10011084], eax
mov eax, dword [esp + 0x2c]
add eax, 0x499
cmp dword [0x100110a8], 0
mov dword [esp + 0x60], eax
jne 0x1000682a
cmp byte [0x10011011], 0
je 0x10006817
cmp byte [esp + 0x13], 0
jne 0x10006765
mov esi, 1
xor edi, edi
jmp 0x10006776
xorps xmm0, xmm0
movlpd qword [esp + 0x38], xmm0
mov edi, dword [esp + 0x3c]
mov esi, dword [esp + 0x38]
mov ecx, dword [0x10011018]
mov eax, dword [0x1001101c]
or ecx, eax
jne 0x1000678c
mov ecx, 1
jmp 0x1000678e
xor ecx, ecx
mov eax, dword [0x1001108c]
not eax
add eax, ecx
mov ecx, dword [section..data]
mov edx, dword [0x10011004]
xor ecx, esi
xor edx, edi
movzx edi, word [esp + 0x1c]
add ecx, eax
mov eax, dword [esp + 0x78]
movzx eax, al
not ecx
adc edx, 0
mov dword [esp + 0x7c], ecx
add edi, dword [0x1001107c]
not edx
xor esi, esi
mov dword [esp + 0x5c], edx
push esi
push dword [esp + 0x18]
cdq
push edx
push eax
call fcn.1000f900
mov ecx, dword [esp + 0x48]
xor edi, eax
mov eax, dword [0x10011078]
xor esi, edx
add edi, dword [esp + 0x7c]
not edi
adc esi, dword [esp + 0x5c]
add ecx, 0x1069a7e9
not esi
mov dword [esp + 0x14], edi
mov edi, dword [esp + 0x84]
and eax, ecx
mov dword [esp + 0x5c], esi
mov esi, dword [esp + 0x90]
mov dword [0x10011078], eax
jmp 0x1000682a
cmp word [0x10011024], 0
je 0x1000682a
mov al, byte [0x10082928]
mov byte [esp + 0x10], al
mov eax, dword [esp + 0x2c]
sub esp, 0x28
add eax, 0x2d0
mov dword [esp + 0xb8], eax
mov ax, word [esp + 0x4c]
movsx ecx, word [0x1001107c]
cwde
imul eax, ecx
mov word [0x1001106c], ax
mov eax, dword [esp + 0x54]
add eax, 0x4e4
mov dword [esp + 0xa8], eax
call fcn.100012c0
add esp, 0x28
mov dword [0x10011050], eax
or eax, edx
mov dword [0x10011054], edx
je 0x100068b7
cmp dword [esp + 0x74], 0
je 0x10006898
mov eax, 0x3e61
sub eax, dword [0x1014fd58]
movzx eax, ax
mov dword [esp + 0x8c], eax
jmp 0x100068b7
mov eax, dword [esp + 0x78]
xor ecx, ecx
cmp word [esp + 0x58], cx
movzx eax, al
sete cl
cmp ecx, eax
jbe 0x100068b7
mov eax, 0xffffa619
mov word [esp + 0x20], ax
mov eax, dword [0x10082928]
mov dword [esp + 0x2c], eax
movsx eax, word [0x1001106c]
imul eax, eax, 0xcb4bbd97
sub dword [0x100110a0], eax
mov eax, dword [0x10011070]
sbb dword [0x100110a4], 0
add eax, 0xffffbb19
mov word [0x10011034], ax
mov eax, dword [esp + 0x2c]
add eax, 0x369
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x2c]
add eax, 0x594
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x54]
add dword [0x100110a0], eax
mov eax, dword [0x10011038]
adc dword [0x100110a4], 0
xor eax, 0xffffcba9
mov word [0x1001106c], ax
mov eax, dword [esp + 0x2c]
add eax, 0x698
mov dword [esp + 0x7c], eax
mov eax, dword [0x10082928]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x2c]
add eax, 0x3c4
mov dword [esp + 0x64], eax
mov ax, word [0x10082928]
mov word [0x100110b8], ax
mov al, byte [0x10011011]
sub al, 0x3a
mov byte [0x10011010], al
mov eax, dword [esp + 0x2c]
add eax, 0x5459
mov dword [esp + 0x64], eax
cmp byte [esp + 0x11], 0
je 0x100069ba
mov ax, word [0x10011060]
movsx eax, si
cdq
cmp dword [0x10011054], edx
jb 0x10006997
ja 0x10006990
cmp dword [0x10011050], eax
jb 0x10006997
mov esi, 1
jmp 0x10006999
xor esi, esi
movsx edx, word [esp + 0x20]
xor ecx, ecx
mov eax, dword [0x100110bc]
cmp eax, edx
sete cl
cmp ecx, esi
je 0x100069ba
mov ax, word [esp + 0x1c]
mov eax, dword [0x10011038]
jmp 0x100069cb
mov eax, 0xa602c81b
sub eax, dword [0x100110b0]
add dword [0x1001108c], eax
mov eax, dword [esp + 0x2c]
mov esi, dword [esp + 0x50]
add eax, 0x34b
mov dword [esp + 0x30], eax
mov ecx, esi
imul ecx, dword [esp + 0x58]
movzx eax, byte [0x10011026]
add cx, ax
mov eax, 0x4c0a
not cx
movzx edx, cx
mov cx, word [0x10011030]
sub cx, ax
movsx eax, si
movsx ecx, cx
imul ecx, eax
movsx eax, dx
not cx
movsx ecx, cx
imul ecx, eax
movzx eax, cx
mov ecx, eax
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x90]
xor eax, dword [esp + 0x90]
mov dword [esp + 0x64], ecx
mov ecx, dword [esp + 0x80]
imul ecx, eax
mov eax, dword [esp + 0x60]
imul eax, ecx
mov ecx, 0x90b
sub ecx, eax
mov eax, dword [esp + 0x30]
sub ecx, eax
mov dword [esp + 0x90], ecx
mov al, byte [esp + 0x10]
mov eax, dword [0x10082928]
push ecx
mov dword [esp + 0x5c], eax
call fcn.10001460
movzx eax, ax
add esp, 4
test ax, ax
je 0x10006ac1
cmp dword [0x1001102c], 0
jne 0x10006a87
mov ecx, 1
xor esi, esi
jmp 0x10006a98
xorps xmm0, xmm0
movlpd qword [esp + 0x30], xmm0
mov esi, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
sub ecx, dword [0x10011048]
movzx eax, byte [esp + 0x13]
not ecx
sbb esi, dword [0x1001104c]
not eax
cdq
not esi
add eax, ecx
adc edx, esi
or eax, edx
jne 0x10006abd
lea ecx, [eax + 1]
jmp 0x10006ac5
xor ecx, ecx
jmp 0x10006ac5
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x58]
mov esi, 0x172
add byte [esp + 0x1b], 0x12
add eax, 0x307
add ecx, esi
mov dword [esp + 0x30], eax
movzx edx, di
mov dword [esp + 0x50], ecx
nop word [eax + eax]
mov ecx, 0x351
nop word [eax + eax]
mov al, byte [esp + 0x11]
sub dword [0x100110b0], edx
dec al
mov byte [esp + 0x11], al
sub ecx, 1
jne 0x10006b00
sub esi, 1
jne 0x10006af0
mov eax, dword [esp + 0x58]
add eax, 0x33b
mov byte [0x10011014], 4
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x58]
add eax, 0x3a3
mov dword [esp + 0x80], eax
cmp byte [esp + 0x11], cl
jne 0x10006bf7
mov eax, dword [esp + 0x98]
mov esi, dword [0x10011018]
mov ecx, dword [0x1001101c]
movzx eax, ax
cdq
cmp ecx, edx
jb 0x10006b72
ja 0x10006b69
cmp esi, eax
jb 0x10006b72
mov ecx, 1
xor eax, eax
jmp 0x10006b8c
xorps xmm0, xmm0
movlpd qword [esp + 0x98], xmm0
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x98]
cmp dword [esp + 0x5c], eax
jg 0x10006bb6
jl 0x10006b9a
cmp dword [esp + 0x14], ecx
ja 0x10006bb6
mov eax, dword [0x10011070]
movzx esi, byte [0x10011016]
add eax, 0xffffff9b
movzx eax, ax
mov dword [esp + 0x50], eax
mov dword [esp + 0x70], esi
jmp 0x10006bfb
cmp byte [esp + 0xf], 0
je 0x10006bca
mov al, byte [esp + 0x10]
shl al, 5
mov byte [esp + 0x12], al
jmp 0x10006bf7
cmp word [esp + 0x50], 0
jne 0x10006be3
cmp word [0x100110ac], 0
je 0x10006be3
mov ecx, 1
jmp 0x10006be5
xor ecx, ecx
movzx eax, byte [esp + 0xf]
cmp eax, ecx
je 0x10006bf7
mov eax, dword [0x10011064]
add byte [esp + 0x78], al
mov esi, dword [esp + 0x70]
movzx eax, si
mov dword [esp + 0x98], eax
call fcn.100017f0
movzx eax, al
cdq
mov dword [0x10011050], eax
mov dword [0x10011054], edx
test edx, edx
ja 0x10006c2a
jb 0x10006c23
test eax, eax
jne 0x10006c2a
mov ecx, 1
jmp 0x10006c37
xor ecx, ecx
test edx, edx
ja 0x10006c69
jb 0x10006c37
cmp eax, 1
ja 0x10006c69
cmp ecx, 1
jbe 0x10006c69
cmp word [0x10011030], 0
je 0x10006c69
mov eax, dword [esp + 0x8c]
cwde
cdq
mov dword [0x10011050], eax
mov eax, esi
imul eax, edi
mov dword [0x10011054], edx
movzx edi, ax
mov dword [esp + 0x84], edi
mov ecx, dword [esp + 0x30]
xor edx, edx
mov eax, dword [esp + 0x60]
or ecx, 0xd39a
sub ecx, eax
mov eax, dword [esp + 0x80]
sub ecx, eax
mov eax, dword [0x10082928]
sub ecx, 0xcaa8
mov dword [esp + 0x60], ecx
mov dword [esp + 0x14], eax
mov al, byte [esp + 0x11]
mov eax, dword [esp + 0x14]
add eax, 0x62c
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x14]
add eax, dword [esp + 0x90]
mov dword [esp + 0x80], eax
mov al, byte [esp + 0x1b]
cbw
cmp word [0x10011030], ax
movzx ecx, ax
sete dl
mov dword [esp + 0x30], ecx
xor eax, eax
cmp word [0x10011030], 0x2a
sete al
cmp edx, eax
jbe 0x10006d4f
cmp word [esp + 0x20], 0
je 0x10006d27
movzx eax, byte [0x10011026]
mov ecx, dword [0x10011018]
add ax, 4
mov word [0x10011088], ax
mov eax, dword [0x1001101c]
or ecx, eax
mov eax, dword [0x100110a8]
jne 0x10006d16
movzx eax, byte [0x10011011]
cdq
mov dword [0x10011070], eax
mov dword [0x10011074], edx
jmp 0x10006e08
cmp word [0x10011024], 0
je 0x10006e08
mov eax, dword [esp + 0x2c]
mov word [0x100110c0], ax
mov eax, 0x7c9f
mov word [0x10011024], ax
jmp 0x10006e08
test di, di
je 0x10006d91
mov ecx, dword [0x100110a8]
shl ecx, 5
sub ecx, dword [0x100110a8]
movzx eax, cx
mov dword [esp + 0x50], eax
movsx eax, byte [esp + 0x11]
mov edx, dword [0x1001102c]
add edx, eax
movzx ecx, di
mov eax, dword [0x1001102c]
add ecx, edx
add eax, ecx
cdq
mov dword [0x10011008], eax
mov dword [0x1001100c], edx
jmp 0x10006e08
mov eax, dword [esp + 0x8c]
cwde
not eax
test eax, eax
jne 0x10006dcd
cmp dword [0x100110bc], eax
jne 0x10006dcd
cmp dword [0x1001108c], eax
jne 0x10006db4
test si, si
je 0x10006e08
cmp dword [esp + 0x54], 0
movsx eax, byte [0x10011014]
jne 0x10006dc7
mov eax, dword [0x10011020]
mov dword [esp + 0x48], eax
jmp 0x10006e08
mov eax, dword [0x10011018]
mov ecx, dword [0x1001101c]
shld ecx, eax, 4
shl eax, 4
mov dword [esp + 0x4c], eax
movzx eax, byte [0x10011011]
imul eax, eax, 0x7d2f
mov dword [esp + 0x88], ecx
mov cx, word [esp + 0x28]
add cl, al
add cl, byte [0x10011020]
mov byte [esp + 0x11], cl
mov eax, dword [esp + 0x14]
add eax, 0x62f
mov dword [0x100110a0], 0xd19d543d
mov dword [esp + 0x14], eax
movzx eax, byte [esp + 0x12]
cdq
mov ecx, eax
mov dword [0x100110a4], 0x26637
add ecx, dword [0x100110a0]
mov esi, edx
mov eax, dword [0x100110bc]
adc esi, dword [0x100110a4]
cdq
cmp eax, ecx
jne 0x10006f69
cmp edx, esi
jne 0x10006f69
mov edi, dword [esp + 0x30]
nop dword [eax]
mov eax, dword [0x100110bc]
neg eax
sbb eax, eax
inc eax
cmp dword [0x100110a8], eax
je 0x10006e7f
mov eax, edi
shl eax, 7
mov word [0x100110ac], ax
jmp 0x10006e8a
mov eax, dword [esp + 0x74]
sub word [0x10011030], ax
movzx eax, byte [esp + 0x12]
add eax, 0x93d3
cmp dword [0x10011020], eax
jne 0x10006f69
cmp byte [esp + 0xf], 0
je 0x10006f1e
xor eax, eax
cmp word [0x100110b8], 0x5d
setne al
test eax, eax
je 0x10006eea
movsx eax, word [0x1001103c]
cdq
add eax, 0x920d615d
mov dword [0x10011040], eax
mov eax, dword [esp + 0x78]
adc edx, 0x997dd
movzx eax, al
imul eax, eax, 0x78a15040
mov dword [0x10011044], edx
mov dword [0x1001108c], eax
jmp 0x10006f2d
movsx ecx, word [esp + 0x24]
xor edx, edx
mov eax, dword [0x10011038]
not ecx
cmp ecx, eax
movsx eax, byte [esp + 0x10]
sete dl
add eax, edx
je 0x10006f2d
movzx eax, byte [0x10011015]
mov word [0x100110ac], ax
mov eax, dword [0x10011078]
mov byte [esp + 0x78], al
jmp 0x10006f2d
mov eax, dword [0x10011080]
and eax, 0x1d
mov dword [esp + 0x84], eax
movzx eax, byte [esp + 0x12]
cdq
mov ecx, eax
mov dword [0x100110a0], 0xd19d543d
add ecx, dword [0x100110a0]
mov esi, edx
mov eax, dword [0x100110bc]
mov dword [0x100110a4], 0x26637
adc esi, dword [0x100110a4]
cdq
cmp eax, ecx
jne 0x10006f69
cmp edx, esi
je 0x10006e60
mov eax, dword [esp + 0x14]
add eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x5c]
imul ecx, eax
imul edx, ecx
mov ecx, dword [esp + 0x14]
imul ecx, dword [esp + 0x80]
mov eax, dword [esp + 0x5c]
imul eax, ecx
cmp edx, eax
je 0x10007d04
mov byte [esp + 0x1a], 0xd0
mov eax, dword [0x10011040]
mov ecx, dword [0x10011044]
mov ax, word [0x10011024]
mov eax, dword [0x1001107c]
mov dx, word [0x100110b8]
mov ecx, dword [0x1001109c]
mov dword [esp + 0x30], eax
mov al, byte [0x10011020]
mov dword [esp + 0x34], 0
mov byte [esp + 0x1a], dl
mov byte [esp + 0x1a], al
mov eax, dword [0x10011098]
mov dword [esp + 0x30], 0x1eed
mov dword [esp + 0x34], 0
mov dword [esp + 0x30], eax
movsx eax, word [0x10011030]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x30], eax
mov al, byte [0x10011013]
mov byte [esp + 0x1a], dl
mov ecx, dword [0x10011018]
mov byte [esp + 0x1b], al
mov eax, dword [0x1001101c]
mov dword [esp + 0x30], ecx
mov ecx, dword [section..data]
mov eax, dword [0x10011004]
mov byte [esp + 0x47], cl
mov dword [esp + 0x30], 0xfd3e
mov dword [esp + 0x34], 0
mov eax, dword [0x1001102c]
mov ax, word [0x10011060]
mov ax, word [0x100110b4]
movzx eax, word [0x10011090]
mov word [esp + 0x24], ax
movsx eax, byte [0x10011017]
cdq
mov dword [esp + 0x30], eax
mov eax, dword [0x1001108c]
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], eax
movzx eax, byte [0x10011013]
cdq
sub dword [0x10011098], eax
movsx eax, byte [esp + 0x1a]
sbb dword [0x1001109c], edx
sub eax, 0x47
mov dword [esp + 0x30], eax
mov al, byte [esp + 0x12]
cmp word [0x10011060], 0
jne 0x100070b1
mov ecx, dword [0x10011018]
mov eax, dword [0x1001101c]
or ecx, eax
je 0x100070b6
mov ecx, 1
movsx eax, word [esp + 0x20]
cmp ecx, eax
jge 0x100070d3
movsx ax, byte [esp + 0x11]
mov ecx, 0x6088
sub ax, cx
mov word [0x10011034], ax
mov eax, dword [0x1001102c]
mov esi, dword [0x10011018]
mov ecx, dword [0x1001101c]
cdq
cmp edx, ecx
jb 0x10007102
ja 0x100070ef
cmp eax, esi
jb 0x10007102
cmp dword [0x10011078], 0
je 0x10007102
mov eax, 0xffffef91
mov word [esp + 0x24], ax
mov eax, dword [0x10082928]
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x14], eax
mov eax, ecx
sub eax, 0x878215e4
mov dword [esp + 0x58], eax
mov eax, 0
sbb eax, 0x8b7a6
shr ecx, 3
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x14]
add eax, 0xc82
mov dword [esp + 0x60], eax
mov ax, word [0x10011028]
mov al, byte [esp + 0x11]
mov ax, word [0x10011028]
mov eax, dword [esp + 0x14]
add eax, 0x314
mov dword [esp + 0x30], eax
mov word [esp + 0x24], cx
mov eax, dword [esp + 0x14]
add eax, 0x1370
cmp word [esp + 0x70], 0
mov dword [esp + 0x30], eax
jne 0x1000719a
cmp word [esp + 0x1c], 0
jne 0x1000719a
xorps xmm0, xmm0
movlpd qword [esp + 0x90], xmm0
mov eax, dword [esp + 0x94]
mov edi, dword [esp + 0x90]
mov dword [esp + 0x5c], eax
jmp 0x100071a7
mov edi, 1
mov dword [esp + 0x5c], 0
mov eax, dword [esp + 0x64]
mov ecx, dword [0x10011040]
mov esi, dword [0x10011044]
cwde
cdq
or edx, esi
or eax, ecx
cmp edx, dword [esp + 0x5c]
jb 0x100071ce
ja 0x100071c9
cmp eax, edi
jbe 0x100071ce
mov byte [esp + 0x12], 0xd1
mov eax, dword [esp + 0x7c]
mov ecx, 0xc41
mov eax, dword [esp + 0x7c]
mov eax, dword [esp + 0x38]
mov eax, dword [esp + 0x30]
sub ecx, eax
mov eax, dword [esp + 0x60]
add eax, ecx
mov dword [esp + 0x64], eax
mov eax, dword [0x10082928]
mov dword [esp + 0x14], eax
mov ax, word [esp + 0x1c]
mov al, byte [0x10011010]
movzx edx, byte [esp + 0xf]
mov ecx, dword [0x100110b0]
mov al, byte [0x10011012]
mov al, byte [0x10011026]
cmp edx, ecx
ja 0x10007231
movsx ax, byte [0x10011014]
mov ecx, 0x38fc
add ax, cx
mov word [0x10011030], ax
mov eax, dword [esp + 0x14]
xor edx, edx
add eax, 0x2d9
mov dword [esp + 0x38], eax
mov eax, 0xfffff58f
mov word [0x10011028], ax
movzx eax, byte [esp + 0xf]
movzx ecx, byte [0x10011016]
imul ecx, eax
mov al, byte [esp + 0xf]
sub al, cl
mov byte [esp + 0xf], al
mov eax, dword [esp + 0x14]
add eax, 0x1795
mov dword [esp + 0x38], eax
movzx ecx, byte [esp + 0xf]
movzx eax, word [0x1001106c]
sub ax, cx
mov word [esp + 0x20], ax
mov eax, dword [esp + 0x4c]
movzx eax, al
imul eax, eax, 0xe1
add byte [0x10011015], al
mov eax, dword [esp + 0x14]
add eax, 0x2ff
mov dword [esp + 0x54], eax
mov cx, word [0x10011090]
movsx eax, byte [0x10011017]
cmp cx, ax
mov cl, byte [0x10011015]
movzx eax, cl
setge dl
cmp edx, eax
je 0x100072dd
movzx eax, byte [0x10011016]
inc cl
movzx ecx, cl
imul ecx, eax
mov byte [0x10011016], cl
jmp 0x10007337
mov ecx, dword [section..data]
mov eax, dword [0x10011004]
or ecx, eax
je 0x10007337
mov eax, dword [esp + 0x70]
mov edi, dword [0x10011058]
cwde
cdq
mov dword [esp + 0x14], edi
mov esi, eax
or esi, dword [esp + 0x58]
mov ecx, edx
or ecx, dword [esp + 0x80]
sub dword [esp + 0x14], esi
mov edi, dword [0x1001105c]
sbb edi, ecx
mov dword [0x1001108c], 1
mov ecx, dword [esp + 0x14]
sub ecx, eax
sbb edi, edx
or ecx, edi
je 0x10007337
mov dword [0x1001108c], 0
mov eax, dword [esp + 0x54]
or eax, dword [esp + 0x54]
mov edx, dword [esp + 0x54]
mov ecx, dword [esp + 0x54]
or edx, eax
mov edi, dword [ebp + 8]
or ecx, edx
mov esi, dword [ebp + 0xc]
mov eax, 0x621
sub eax, ecx
mov dword [esp + 0x30], eax
cmp edi, esi
jle 0x10007c0d
movsx ecx, byte [esp + 0x10]
mov eax, dword [esp + 0x74]
imul eax, ecx
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x48]
cmp byte [0x10011016], 0
jne 0x10007405
mov eax, dword [esp + 0x8c]
movsx ecx, ax
movzx eax, word [esp + 0x1c]
not ecx
cmp ecx, eax
jne 0x100073aa
movzx eax, byte [0x10011016]
cmp ax, word [0x1001103c]
je 0x10007405
mov eax, dword [0x10011058]
mov ecx, dword [0x1001105c]
mov edx, dword [0x10011098]
mov edi, dword [0x1001109c]
not edx
mov esi, dword [0x10011040]
and edx, eax
mov eax, dword [esp + 0x50]
not edi
and edi, ecx
mov dword [esp + 0x38], edx
mov ecx, dword [0x10011044]
cwde
cdq
push edi
push dword [esp + 0x3c]
sub esi, eax
sbb ecx, edx
push ecx
push esi
call fcn.1000f900
or eax, edx
jne 0x100073fa
mov eax, 1
jmp 0x100073fc
xor eax, eax
mov edi, dword [ebp + 8]
mov word [0x100110b4], ax
mov eax, dword [0x10082928]
sub esp, 0xc
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x20]
add eax, 0x2ed
mov dword [esp + 0x44], eax
mov ax, word [0x10011024]
call fcn.100011d0
movzx eax, al
add esp, 0xc
cdq
mov dword [section..data], eax
mov dword [0x10011004], edx
mov ecx, dword [section..data]
mov eax, dword [0x10011004]
or ecx, eax
je 0x10007451
mov ecx, 1
jmp 0x10007453
xor ecx, ecx
mov eax, dword [section..data]
mov edx, dword [0x10011004]
cmp eax, 0x49
jne 0x1000746b
test edx, edx
jne 0x1000746b
xor eax, eax
jmp 0x10007470
mov eax, 1
cmp ecx, eax
ja 0x10007479
mov eax, dword [0x10011064]
mov eax, dword [esp + 0x14]
mov esi, 0x198
add eax, 0x573
mov dword [esp + 0x60], eax
nop dword [eax + eax]
mov eax, dword [esp + 0x68]
sub esp, 0xc
mov ecx, dword [esp + 0x78]
call fcn.100011d0
movzx eax, al
xor edx, edx
add esp, 0xc
mov dword [0x10011078], eax
mov eax, dword [0x10011078]
cmp eax, 0x1e
mov eax, dword [0x10011078]
setg dl
xor ecx, ecx
test eax, eax
setg cl
cmp ecx, edx
jae 0x100074f0
mov eax, dword [0x10011064]
not eax
test eax, eax
je 0x100074f0
mov eax, dword [0x10011080]
add eax, 0xffffff54
mov word [0x1001103c], ax
movzx eax, byte [0x10011010]
and dword [0x100110b0], eax
inc word [0x100110ac]
sub esi, 1
jne 0x10007490
mov eax, dword [esp + 0x14]
add eax, dword [esp + 0x64]
mov dword [esp + 0x7c], eax
mov ecx, dword [esp + 0x7c]
imul ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x30]
imul eax, ecx
cmp eax, dword [esp + 0x7c]
je 0x10007d04
mov byte [esp + 0xf], 0x94
movzx eax, word [esp + 0x28]
cmp eax, dword [0x100110a8]
je 0x10007546
mov eax, dword [0x10011068]
add eax, 0xfffff5a6
movzx esi, ax
jmp 0x100075e9
movsx eax, word [0x10011090]
mov esi, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
cdq
cmp ecx, edx
ja 0x10007567
jb 0x10007560
cmp esi, eax
ja 0x10007567
mov ecx, 1
jmp 0x10007569
xor ecx, ecx
mov eax, dword [esp + 0x70]
cwde
cdq
cmp dword [0x10011080], eax
jne 0x10007586
cmp dword [0x10011084], edx
jne 0x10007586
mov eax, 1
jmp 0x10007588
xor eax, eax
mov esi, dword [esp + 0x50]
cmp ecx, eax
jne 0x100075e9
mov eax, dword [0x10011098]
movsx ecx, byte [0x10011017]
add eax, 0xffffc2d8
mov word [esp + 0x20], ax
mov ax, word [esp + 0x28]
sub cx, ax
movzx eax, cx
movzx ecx, word [esp + 0x1c]
add cx, ax
movzx eax, cx
mov ecx, dword [esp + 0x48]
add ecx, eax
mov eax, dword [esp + 0x74]
xor eax, dword [0x10011050]
movzx edx, cx
movzx ecx, byte [esp + 0xf]
movzx eax, ax
add cx, ax
mov eax, edx
movzx ecx, cx
imul ecx, eax
mov word [0x100110ac], cx
mov eax, dword [0x10082928]
mov dword [esp + 0x14], eax
cmp dword [0x10011064], 0
jne 0x10007668
movzx ecx, byte [0x10011010]
xor edx, edx
movsx eax, byte [esp + 0x10]
not ecx
cmp eax, ecx
mov eax, dword [esp + 0x84]
movzx eax, ax
setle dl
movsx ecx, si
mov dword [esp + 0x38], edx
xor edx, edx
cmp ecx, eax
mov eax, dword [esp + 0x38]
setne dl
add eax, edx
je 0x10007668
cmp dword [0x1001107c], 0
je 0x10007643
movzx eax, byte [esp + 0xf]
cdq
mov ecx, eax
jmp 0x1000764b
mov ecx, dword [esp + 0x68]
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x48], ecx
movzx eax, word [esp + 0x28]
cdq
add eax, 0x59f7a52d
mov dword [0x10011050], eax
adc edx, 0
mov dword [0x10011054], edx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x70]
add eax, 0x3a4
mov dword [esp + 0x38], eax
movsx eax, cx
sub eax, 0x73
mov dword [0x100110b0], eax
mov eax, dword [esp + 0x14]
add eax, 0x21a9
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x14]
add eax, 0x7236
mov dword [esp + 0x64], eax
cmp word [0x10011030], cx
jl 0x10007751
mov eax, dword [0x100110a8]
movzx ecx, word [0x10011034]
not eax
cmp eax, ecx
jl 0x100076d9
movzx eax, byte [0x10011026]
cdq
mov dword [0x10082ed8], eax
mov dword [0x10082edc], edx
mov byte [0x10011026], 8
jmp 0x10007751
movsx eax, byte [esp + 0x10]
mov ecx, dword [0x10011018]
not eax
mov esi, dword [0x1001101c]
not ecx
cdq
not esi
cmp eax, ecx
jne 0x10007700
cmp edx, esi
jne 0x10007700
mov esi, 1
jmp 0x10007702
xor esi, esi
mov eax, dword [esp + 0x2c]
xor ecx, ecx
movzx edx, word [esp + 0x28]
cwde
not edx
not eax
cmp edx, eax
setne cl
cmp ecx, esi
je 0x10007751
movzx eax, word [0x10011090]
movzx ecx, word [esp + 0x1c]
imul ecx, eax
or cx, word [0x10011090]
mov word [0x10011090], cx
mov al, byte [0x10011010]
mov dword [0x10011098], 0xffffffff
mov dword [0x1001109c], 0xffffffff
mov eax, dword [esp + 0x38]
mov ecx, 0x2775
sub ecx, eax
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x68]
mov eax, dword [esp + 0x6c]
or ecx, eax
jne 0x10007782
cmp dword [esp + 0x74], ecx
je 0x10007782
mov dword [0x10011040], 1
mov dword [0x10011044], ecx
mov eax, dword [0x10082928]
mov dword [esp + 0x14], eax
mov eax, dword [0x10011040]
mov ecx, dword [0x10011044]
mov al, byte [esp + 0x11]
mov al, byte [esp + 0x13]
cmp al, byte [esp + 0x13]
ja 0x100077ce
movsx eax, word [0x100110c0]
mov ecx, dword [esp + 0x2c]
cdq
mov dword [0x10131270], eax
movzx eax, byte [0x10011013]
movzx ecx, cl
imul ecx, eax
mov dword [0x10131274], edx
mov byte [0x10011013], cl
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x84]
add eax, 0x35e
mov dword [esp + 0x38], eax
mov al, byte [0x10011013]
xor cl, al
sub al, cl
xor ecx, ecx
mov byte [0x10011013], al
mov eax, dword [esp + 0x48]
mov eax, dword [esp + 0x14]
add eax, 0x67c5
cmp byte [esp + 0x1b], cl
mov dword [esp + 0x30], eax
movzx eax, byte [esp + 0x13]
setne cl
cmp ecx, eax
jne 0x10007829
cmp word [0x10011088], 0
je 0x10007829
mov al, byte [esp + 0x58]
xor al, 0x71
mov byte [esp + 0x10], al
jmp 0x10007894
mov eax, dword [esp + 0x48]
xor ecx, ecx
cmp ecx, dword [esp + 0x88]
ja 0x10007849
jb 0x10007840
cmp eax, dword [esp + 0x4c]
jae 0x10007849
mov ecx, 1
xor eax, eax
jmp 0x1000785a
xorps xmm0, xmm0
movlpd qword [esp + 0x68], xmm0
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x68]
cmp eax, dword [0x10011054]
jb 0x10007894
ja 0x1000786c
cmp ecx, dword [0x10011050]
jbe 0x10007894
mov ecx, dword [esp + 0x48]
xor edx, edx
mov ax, word [esp + 0x1c]
cmp byte [esp + 0x1b], dl
movzx eax, al
cmove edx, eax
sub cl, 0x61
not dl
add dl, cl
add dl, byte [0x1001108c]
mov byte [0x10011016], dl
mov eax, dword [esp + 0x14]
add eax, 0x6129
mov dword [esp + 0x4c], eax
mov ax, word [esp + 0x24]
mov eax, dword [0x10011018]
mov ecx, dword [0x1001101c]
mov eax, dword [0x10011020]
mov word [esp + 0x1c], ax
mov dword [esp + 0x88], 0x7e6d3a1c
mov byte [esp + 0x47], 0xf5
movzx eax, word [0x10011060]
mov dword [esp + 0x38], eax
mov eax, dword [0x10011058]
mov ecx, dword [0x1001105c]
mov dword [esp + 0x68], eax
mov eax, 0x2a
mov dword [esp + 0x6c], ecx
mov word [esp + 0x1c], ax
mov eax, dword [0x10011080]
mov dword [esp + 0x38], eax
mov al, byte [0x10011070]
mov dword [esp + 0x38], 0x5e60
mov byte [esp + 0x1a], al
mov dx, word [0x10011024]
movzx eax, byte [0x10011015]
mov dword [esp + 0x38], eax
mov dword [esp + 0x68], 0x4b57
mov dword [esp + 0x6c], 0
mov eax, dword [0x1001102c]
mov dword [esp + 0x64], eax
mov eax, dword [0x10011038]
mov al, byte [0x10011094]
mov dword [esp + 0x68], 0x16
mov dword [esp + 0x6c], 0
mov byte [esp + 0x47], al
movzx eax, word [0x10011024]
mov dword [esp + 0x38], eax
movsx ecx, byte [esp + 0x1a]
movsx eax, dl
mov edx, dword [esp + 0x88]
imul ecx, eax
xor eax, eax
imul edx, ecx
cmp dword [0x100110a8], eax
mov cx, word [0x10011028]
sete al
xor cx, ax
movzx eax, word [0x100110b8]
not cx
add cx, word [0x10011068]
add cx, dx
mov word [0x10011090], cx
mov ecx, dword [0x10011078]
sub ecx, eax
mov eax, dword [0x1001107c]
xor ecx, dword [0x10011070]
add eax, 0x2ea
imul eax, eax, 0x8a3e
sub ecx, eax
movsx eax, byte [0x10011014]
sub eax, 0xa8
mov dword [esp + 0x88], ecx
mov dword [esp + 0x38], eax
mov ax, word [0x100110b4]
mov esi, dword [esp + 0x64]
test esi, esi
je 0x100079f9
mov al, byte [0x10011017]
sub al, 0x4a
mov byte [0x10011026], al
jmp 0x10007a16
mov al, byte [esp + 0x12]
mov ecx, 0x22ae
inc al
mov byte [esp + 0x12], al
movzx eax, byte [esp + 0x13]
sub ax, cx
mov word [0x10011028], ax
mov eax, dword [esp + 0x4c]
mov ecx, 0x12ad7
or eax, dword [esp + 0x4c]
sub ecx, eax
mov eax, dword [esp + 0x30]
sub ecx, eax
mov eax, dword [esp + 0x4c]
sub ecx, eax
mov dword [esp + 0x64], ecx
mov ax, word [esp + 0x28]
movzx eax, word [esp + 0x28]
mov eax, dword [0x10011064]
not eax
test eax, eax
je 0x10007a6d
movsx eax, byte [esp + 0x11]
movsx ecx, word [esp + 0x20]
imul ecx, eax
movzx eax, word [0x10011034]
mov byte [0x10011016], 0x4b
add eax, ecx
mov dword [esp + 0x48], eax
jmp 0x10007a8d
test esi, esi
je 0x10007a8d
mov ax, word [esp + 0x28]
movsx eax, word [esp + 0x24]
sub eax, 0x6599
cdq
sub dword [0x10011098], eax
sbb dword [0x1001109c], edx
test edi, edi
jle 0x10007d04
nop word [eax + eax]
mov eax, dword [0x10011040]
xor edx, edx
mov ecx, dword [0x10011044]
cmp esi, eax
jne 0x10007ab9
cmp edx, ecx
jne 0x10007ab9
xor ecx, ecx
jmp 0x10007abe
mov ecx, 1
xor eax, eax
cmp esi, 0x5c
setne al
cmp ecx, eax
jae 0x10007b37
push ecx
call fcn.10001460
movzx eax, ax
add esp, 4
test ax, ax
jne 0x10007af9
mov cl, byte [0x10011050]
mov eax, dword [esp + 0x74]
shl cl, 5
sub cl, byte [0x10011050]
shl cl, 3
and byte [0x10011015], cl
jmp 0x10007b37
mov eax, dword [0x1001109c]
mul dword [0x1001108c]
mov esi, eax
mov eax, dword [0x10011098]
mul dword [0x1001108c]
mov ecx, eax
add esi, edx
movzx eax, byte [0x10011015]
cdq
add ecx, eax
mov dword [0x10011040], ecx
adc esi, edx
mov dword [0x10011044], esi
imul esi, dword [0x10011050], 0x9052b2e8
mov eax, dword [0x10082928]
mov dword [esp + 0x4c], eax
movzx ecx, byte [esp + 0x13]
movsx eax, byte [0x10011017]
cmp eax, ecx
jg 0x10007b61
movzx eax, byte [0x10011030]
imul eax, eax, 0xe9
mov byte [esp + 0x12], al
mov eax, dword [esp + 0x4c]
add eax, dword [esp + 0x60]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x48]
inc eax
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x4c]
add eax, 0x58e
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x4c]
add eax, 0x4fc
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 0x38]
or ecx, dword [esp + 0x64]
mov eax, dword [esp + 0x30]
add eax, 0x1ba
cmp eax, ecx
je 0x10007bff
movsx ecx, word [esp + 0x24]
xor edx, edx
movzx eax, byte [0x10011015]
cmp ecx, eax
mov ax, word [esp + 0x24]
setg dl
xor ecx, ecx
cmp ax, 0x58
setg cl
cmp edx, ecx
jb 0x10007bf3
movzx eax, word [0x1001106c]
xor ecx, ecx
cmp word [esp + 0x98], cx
sete cl
and cx, word [esp + 0x58]
not cx
movzx ecx, cx
imul ecx, eax
mov word [0x10011060], cx
push dword [ebp + 0xc]
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_Beep]
sub edi, 1
jne 0x10007aa0
jmp 0x10007d04
movzx eax, byte [esp + 0x12]
cdq
cmp dword [0x1001109c], edx
jb 0x10007c2c
ja 0x10007c25
cmp dword [0x10011098], eax
jb 0x10007c2c
mov ecx, 1
jmp 0x10007c2e
xor ecx, ecx
mov eax, dword [esp + 0x78]
movzx eax, al
cmp eax, ecx
jbe 0x10007c90
mov ax, word [esp + 0x20]
xor edi, edi
mov eax, dword [0x100110b0]
test eax, eax
movzx ecx, byte [esp + 0x13]
movzx eax, byte [0x10011013]
cmove edi, ecx
mov esi, dword [section..data]
mov ecx, dword [0x10011004]
cdq
push 0
xor ecx, edx
xor esi, eax
push edi
not ecx
not esi
push ecx
push esi
call fcn.1000f900
or eax, edx
jne 0x10007c7d
mov al, 1
jmp 0x10007c7f
xor al, al
sub al, byte [0x100110b0]
mov edi, dword [ebp + 8]
mov esi, dword [ebp + 0xc]
mov byte [0x10011014], al
mov edx, dword [esp + 0x50]
xor ecx, ecx
cmp dx, word [esp + 0x2c]
setle cl
xor eax, eax
cmp dx, 0xe
setle al
cmp ecx, eax
je 0x10007cf0
movsx eax, byte [0x10011017]
cmp dword [0x10011020], eax
je 0x10007cc5
mov al, byte [0x10011094]
mov byte [esp + 0xf], al
jmp 0x10007cfc
cmp word [0x10011028], 0
je 0x10007cfc
mov eax, dword [0x10011038]
mov dword [0x10011040], eax
mov dword [0x10011044], 0
mov eax, dword [0x10011058]
mov ecx, dword [0x1001105c]
jmp 0x10007cfc
mov al, byte [0x10011026]
sub al, 0x1e
mov byte [0x10011015], al
push esi
push edi
call dword [sym.imp.KERNEL32.dll_Beep]
mov ax, word [0x10010100]
movq xmm0, qword [str.Expression]
mov word [esp + 0xac], ax
mov al, byte [0x10010102]
mov byte [esp + 0xae], al
lea eax, [esp + 0xa4]
push eax
movq qword [esp + 0xa8], xmm0
call dword [sym.imp.KERNEL32.dll_lstrlenA]
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret 8