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

Disassembly:
push 0xffffffffffffffff
push 0x100aee3c
mov eax, dword fs:[0]
push eax
sub esp, 0x70
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x68], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [section..data]
xor eax, esp
push eax
lea eax, [esp + 0x84]
mov dword fs:[0], eax
mov edi, ecx
mov dword [esp + 0x3c], edi
mov eax, dword [edi + 4]
mov ebx, dword [esp + 0x94]
mov ecx, ebx
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x1b]
push eax
mov byte [esp + 0x1f], 1
call fcn.1001e180
mov esi, dword [esp + 0x2c]
mov ecx, ebx
mov eax, esi
sar eax, 0x18
mov byte [esp + 0x1b], al
lea eax, [esp + 0x1b]
push eax
call fcn.1001e180
mov eax, esi
mov ecx, ebx
sar eax, 0x10
mov byte [esp + 0x1b], al
lea eax, [esp + 0x1b]
push eax
call fcn.1001e180
mov eax, esi
mov ecx, ebx
sar eax, 8
mov byte [esp + 0x1b], al
lea eax, [esp + 0x1b]
push eax
call fcn.1001e180
mov eax, esi
mov ecx, ebx
mov byte [esp + 0x1b], al
lea eax, [esp + 0x1b]
push eax
call fcn.1001e180
mov eax, dword [edi]
mov edi, dword [eax]
cmp edi, eax
je 0x10022dde
mov byte [esp + 0x3a], 1
lea ecx, [edi + 0x10]
mov edx, ebx
call fcn.10020ba0
mov eax, dword [edi + 0x2c]
mov ecx, dword [ebx + 4]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x3a]
cmp eax, ecx
jae 0x1002222c
mov esi, dword [ebx]
cmp esi, eax
ja 0x1002222c
mov edx, dword [ebx + 8]
mov ebp, eax
sub ebp, esi
cmp ecx, edx
jne 0x10022209
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x10022209
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x100221fa
xor edx, edx
jmp 0x100221fc
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov ecx, dword [ebx + 4]
mov eax, dword [ebx]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x8c], 0
test ecx, ecx
je 0x1002228e
mov al, byte [eax + ebp]
mov byte [ecx], al
jmp 0x1002228e
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x10022271
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x10022271
mov esi, dword [ebx]
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x10022262
xor edx, edx
jmp 0x10022264
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov eax, dword [ebx + 4]
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x8c], 1
test eax, eax
je 0x1002228e
mov byte [eax], 1
mov dword [esp + 0x8c], 0xffffffff
mov eax, dword [esp + 0x2c]
inc dword [ebx + 4]
mov ecx, dword [ebx + 4]
sar eax, 0x18
mov dword [esp + 0x1c], eax
mov byte [esp + 0x38], al
lea eax, [esp + 0x38]
cmp eax, ecx
jae 0x10022326
mov esi, dword [ebx]
cmp esi, eax
ja 0x10022326
mov edx, dword [ebx + 8]
mov ebp, eax
sub ebp, esi
cmp ecx, edx
jne 0x10022303
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x10022303
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x100222f4
xor edx, edx
jmp 0x100222f6
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov ecx, dword [ebx + 4]
mov eax, dword [ebx]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x8c], 2
test ecx, ecx
je 0x1002238b
mov al, byte [eax + ebp]
mov byte [ecx], al
jmp 0x1002238b
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x1002236b
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x1002236b
mov esi, dword [ebx]
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x1002235c
xor edx, edx
jmp 0x1002235e
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov eax, dword [ebx + 4]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x8c], 3
test eax, eax
je 0x1002238b
mov ecx, dword [esp + 0x1c]
mov byte [eax], cl
mov dword [esp + 0x8c], 0xffffffff
mov eax, dword [esp + 0x2c]
inc dword [ebx + 4]
mov ecx, dword [ebx + 4]
sar eax, 0x10
mov dword [esp + 0x1c], eax
mov byte [esp + 0x33], al
lea eax, [esp + 0x33]
cmp eax, ecx
jae 0x10022423
mov esi, dword [ebx]
cmp esi, eax
ja 0x10022423
mov edx, dword [ebx + 8]
mov ebp, eax
sub ebp, esi
cmp ecx, edx
jne 0x10022400
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x10022400
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x100223f1
xor edx, edx
jmp 0x100223f3
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov ecx, dword [ebx + 4]
mov eax, dword [ebx]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x8c], 4
test ecx, ecx
je 0x10022488
mov al, byte [eax + ebp]
mov byte [ecx], al
jmp 0x10022488
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x10022468
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x10022468
mov esi, dword [ebx]
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x10022459
xor edx, edx
jmp 0x1002245b
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov eax, dword [ebx + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x8c], 5
test eax, eax
je 0x10022488
mov ecx, dword [esp + 0x1c]
mov byte [eax], cl
mov dword [esp + 0x8c], 0xffffffff
mov eax, dword [esp + 0x2c]
inc dword [ebx + 4]
mov ecx, dword [ebx + 4]
sar eax, 8
mov dword [esp + 0x1c], eax
mov byte [esp + 0x3b], al
lea eax, [esp + 0x3b]
cmp eax, ecx
jae 0x10022520
mov esi, dword [ebx]
cmp esi, eax
ja 0x10022520
mov edx, dword [ebx + 8]
mov ebp, eax
sub ebp, esi
cmp ecx, edx
jne 0x100224fd
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x100224fd
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x100224ee
xor edx, edx
jmp 0x100224f0
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov ecx, dword [ebx + 4]
mov eax, dword [ebx]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x8c], 6
test ecx, ecx
je 0x10022585
mov al, byte [eax + ebp]
mov byte [ecx], al
jmp 0x10022585
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x10022565
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x10022565
mov esi, dword [ebx]
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x10022556
xor edx, edx
jmp 0x10022558
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov eax, dword [ebx + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x8c], 7
test eax, eax
je 0x10022585
mov ecx, dword [esp + 0x1c]
mov byte [eax], cl
mov dword [esp + 0x8c], 0xffffffff
mov eax, dword [esp + 0x2c]
inc dword [ebx + 4]
mov ecx, dword [ebx + 4]
mov byte [esp + 0x36], al
lea eax, [esp + 0x36]
cmp eax, ecx
jae 0x10022616
mov esi, dword [ebx]
cmp esi, eax
ja 0x10022616
mov edx, dword [ebx + 8]
mov ebp, eax
sub ebp, esi
cmp ecx, edx
jne 0x100225f3
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x100225f3
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x100225e4
xor edx, edx
jmp 0x100225e6
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov ecx, dword [ebx + 4]
mov eax, dword [ebx]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x8c], 8
test ecx, ecx
je 0x1002267b
mov al, byte [eax + ebp]
mov byte [ecx], al
jmp 0x1002267b
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x1002265b
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x1002265b
mov esi, dword [ebx]
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x1002264c
xor edx, edx
jmp 0x1002264e
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov eax, dword [ebx + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x8c], 9
test eax, eax
je 0x1002267b
mov edx, dword [esp + 0x2c]
mov byte [eax], dl
mov dword [esp + 0x8c], 0xffffffff
inc dword [ebx + 4]
mov eax, dword [edi + 0x28]
mov esi, dword [eax]
cmp esi, eax
je 0x10022d8b
mov byte [esp + 0x35], 1
jmp 0x100226a0
lea ecx, [esi + 0x10]
mov edx, ebx
call fcn.10020ba0
mov eax, dword [esi + 0x28]
mov ecx, dword [ebx + 4]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x35]
cmp eax, ecx
jae 0x10022731
mov ebp, dword [ebx]
cmp ebp, eax
ja 0x10022731
mov edx, dword [ebx + 8]
sub eax, ebp
mov dword [esp + 0x1c], eax
cmp ecx, edx
jne 0x1002270b
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x1002270b
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x100226fc
xor edx, edx
jmp 0x100226fe
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov eax, dword [ebx]
mov ecx, dword [ebx + 4]
add eax, dword [esp + 0x1c]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x8c], 0xa
test ecx, ecx
je 0x10022793
mov al, byte [eax]
mov byte [ecx], al
jmp 0x10022793
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x10022776
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x10022776
mov ebp, dword [ebx]
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x10022767
xor edx, edx
jmp 0x10022769
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov eax, dword [ebx + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x8c], 0xb
test eax, eax
je 0x10022793
mov byte [eax], 1
mov dword [esp + 0x8c], 0xffffffff
mov eax, dword [esp + 0x2c]
inc dword [ebx + 4]
mov ecx, dword [ebx + 4]
sar eax, 0x18
mov dword [esp + 0x1c], eax
mov byte [esp + 0x34], al
lea eax, [esp + 0x34]
cmp eax, ecx
jae 0x10022830
mov ebp, dword [ebx]
cmp ebp, eax
ja 0x10022830
mov edx, dword [ebx + 8]
sub eax, ebp
mov dword [esp + 0x1c], eax
cmp ecx, edx
jne 0x1002280a
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x1002280a
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x100227fb
xor edx, edx
jmp 0x100227fd
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov eax, dword [ebx]
mov ecx, dword [ebx + 4]
add eax, dword [esp + 0x1c]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x8c], 0xc
test ecx, ecx
je 0x10022895
mov al, byte [eax]
mov byte [ecx], al
jmp 0x10022895
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x10022875
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x10022875
mov ebp, dword [ebx]
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x10022866
xor edx, edx
jmp 0x10022868
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov eax, dword [ebx + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x8c], 0xd
test eax, eax
je 0x10022895
mov ecx, dword [esp + 0x1c]
mov byte [eax], cl
mov dword [esp + 0x8c], 0xffffffff
mov eax, dword [esp + 0x2c]
inc dword [ebx + 4]
mov ecx, dword [ebx + 4]
sar eax, 0x10
mov dword [esp + 0x1c], eax
mov byte [esp + 0x37], al
lea eax, [esp + 0x37]
cmp eax, ecx
jae 0x10022932
mov ebp, dword [ebx]
cmp ebp, eax
ja 0x10022932
mov edx, dword [ebx + 8]
sub eax, ebp
mov dword [esp + 0x1c], eax
cmp ecx, edx
jne 0x1002290c
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x1002290c
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x100228fd
xor edx, edx
jmp 0x100228ff
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov eax, dword [ebx]
mov ecx, dword [ebx + 4]
add eax, dword [esp + 0x1c]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x8c], 0xe
test ecx, ecx
je 0x10022997
mov al, byte [eax]
mov byte [ecx], al
jmp 0x10022997
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x10022977
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x10022977
mov ebp, dword [ebx]
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x10022968
xor edx, edx
jmp 0x1002296a
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov eax, dword [ebx + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x8c], 0xf
test eax, eax
je 0x10022997
mov ecx, dword [esp + 0x1c]
mov byte [eax], cl
mov dword [esp + 0x8c], 0xffffffff
mov eax, dword [esp + 0x2c]
inc dword [ebx + 4]
mov ecx, dword [ebx + 4]
sar eax, 8
mov dword [esp + 0x1c], eax
mov byte [esp + 0x39], al
lea eax, [esp + 0x39]
cmp eax, ecx
jae 0x10022a34
mov ebp, dword [ebx]
cmp ebp, eax
ja 0x10022a34
mov edx, dword [ebx + 8]
sub eax, ebp
mov dword [esp + 0x1c], eax
cmp ecx, edx
jne 0x10022a0e
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x10022a0e
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x100229ff
xor edx, edx
jmp 0x10022a01
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov eax, dword [ebx]
mov ecx, dword [ebx + 4]
add eax, dword [esp + 0x1c]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x8c], 0x10
test ecx, ecx
je 0x10022a99
mov al, byte [eax]
mov byte [ecx], al
jmp 0x10022a99
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x10022a79
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x10022a79
mov ebp, dword [ebx]
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x10022a6a
xor edx, edx
jmp 0x10022a6c
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov eax, dword [ebx + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x8c], 0x11
test eax, eax
je 0x10022a99
mov ecx, dword [esp + 0x1c]
mov byte [eax], cl
mov dword [esp + 0x8c], 0xffffffff
mov eax, dword [esp + 0x2c]
inc dword [ebx + 4]
mov ecx, dword [ebx + 4]
mov byte [esp + 0x2b], al
lea eax, [esp + 0x2b]
cmp eax, ecx
jae 0x10022b2f
mov ebp, dword [ebx]
cmp ebp, eax
ja 0x10022b2f
mov edx, dword [ebx + 8]
sub eax, ebp
mov dword [esp + 0x1c], eax
cmp ecx, edx
jne 0x10022b09
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x10022b09
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x10022afa
xor edx, edx
jmp 0x10022afc
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov eax, dword [ebx]
mov ecx, dword [ebx + 4]
add eax, dword [esp + 0x1c]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x8c], 0x12
test ecx, ecx
je 0x10022b94
mov al, byte [eax]
mov byte [ecx], al
jmp 0x10022b94
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x10022b74
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x10022b74
mov ebp, dword [ebx]
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x10022e04
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x10022b65
xor edx, edx
jmp 0x10022b67
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.1001e370
mov eax, dword [ebx + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x8c], 0x13
test eax, eax
je 0x10022b94
mov edx, dword [esp + 0x2c]
mov byte [eax], dl
mov dword [esp + 0x8c], 0xffffffff
inc dword [ebx + 4]
mov eax, dword [esp + 0x2c]
cmp eax, 3
ja case.default.0x10022baf
jmp dword [eax*4 + 0x10022e14]
cmp dword [esi + 0x28], 1
jne 0x10022bd8
mov eax, dword [esi + 0x30]
sub eax, dword [esi + 0x2c]
cmp eax, 4
jne 0x10022bd8
mov eax, dword [esi + 0x2c]
mov edx, ebx
mov ecx, dword [eax]
call fcn.10020840
jmp case.0x10022baf.0
xor ecx, ecx
mov edx, ebx
call fcn.10020840
jmp case.0x10022baf.0
xor eax, eax
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x54], 7
mov dword [esp + 0x50], 0
mov word [esp + 0x40], ax
mov dword [esp + 0x8c], 0x14
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x5c]
push eax
lea ecx, [esi + 0x28]
call fcn.10020700
mov byte [esp + 0x8c], 0x15
mov edx, ebx
mov ecx, eax
call fcn.10020ba0
mov byte [esp + 0x8c], 0x14
cmp dword [esp + 0x6c], 8
jb 0x10022c56
push dword [esp + 0x58]
call fcn.10034183
add esp, 4
xor eax, eax
mov dword [esp + 0x6c], 7
mov dword [esp + 0x68], 0
mov word [esp + 0x58], ax
mov dword [esp + 0x8c], 0xffffffff
cmp dword [esp + 0x54], 8
jb 0x10022c8b
push dword [esp + 0x40]
call fcn.10034183
add esp, 4
xor eax, eax
mov dword [esp + 0x54], 7
mov dword [esp + 0x50], 0
mov word [esp + 0x40], ax
jmp case.0x10022baf.0
xor ebp, ebp
mov dword [esp + 0x78], 0
xorps xmm0, xmm0
movq qword [esp + 0x70], xmm0
mov dword [esp + 0x70], ebp
mov dword [esp + 0x74], ebp
mov dword [esp + 0x78], ebp
mov dword [esp + 0x8c], 0x16
cmp dword [esi + 0x28], 3
je 0x10022ce1
xor edx, edx
mov dword [esp + 0x74], ebp
xor ecx, ecx
jmp 0x10022d04
lea eax, [esi + 0x2c]
push eax
lea ecx, [esp + 0x74]
call fcn.100249b0
mov ebp, dword [esp + 0x70]
mov edx, dword [esp + 0x74]
cmp ebp, edx
jne 0x10022d00
xor edx, edx
xor ecx, ecx
jmp 0x10022d04
sub edx, ebp
mov ecx, ebp
push ebx
call fcn.10020930
add esp, 4
mov dword [esp + 0x8c], 0xffffffff
test ebp, ebp
je case.0x10022baf.0
push ebp
call fcn.10034183
add esp, 4
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
cmp byte [esi + 0xd], 0
jne 0x10022d82
mov eax, dword [esi + 8]
cmp byte [eax + 0xd], 0
jne 0x10022d62
mov esi, eax
mov eax, dword [esi]
cmp byte [eax + 0xd], 0
jne 0x10022d82
mov esi, eax
mov eax, dword [esi]
cmp byte [eax + 0xd], 0
je 0x10022d56
jmp 0x10022d82
mov eax, dword [esi + 4]
cmp byte [eax + 0xd], 0
jne 0x10022d80
jmp 0x10022d70
cmp esi, dword [eax + 8]
jne 0x10022d80
mov esi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0xd], 0
je 0x10022d70
mov esi, eax
cmp esi, dword [edi + 0x28]
jne 0x100226a0
cmp byte [edi + 0xd], 0
jne 0x10022dd2
mov eax, dword [edi + 8]
cmp byte [eax + 0xd], 0
jne 0x10022db0
mov edi, eax
mov eax, dword [edi]
cmp byte [eax + 0xd], 0
jne 0x10022dd2
mov edi, eax
mov eax, dword [edi]
cmp byte [eax + 0xd], 0
je 0x10022da4
jmp 0x10022dd2
mov eax, dword [edi + 4]
cmp byte [eax + 0xd], 0
jne 0x10022dd0
lea esp, [esp]
cmp edi, dword [eax + 8]
jne 0x10022dd0
mov edi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0xd], 0
je 0x10022dc0
mov edi, eax
mov eax, dword [esp + 0x3c]
cmp edi, dword [eax]
jne 0x100221a0
mov al, 1
mov ecx, dword [esp + 0x84]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x68]
xor ecx, esp
call fcn.10033901
add esp, 0x7c
ret 4
push str.vector_T__too_long
call fcn.100418ad
xor al, al
jmp 0x10022de0