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

Disassembly:
push 0xffffffffffffffff
push 0x47f06c
mov eax, dword fs:[0]
push eax
sub esp, 0x70
mov eax, dword [0x49f750]
xor eax, esp
mov dword [esp + 0x68], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x49f750]
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.00416310
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.00416310
mov eax, esi
mov ecx, ebx
sar eax, 0x10
mov byte [esp + 0x1b], al
lea eax, [esp + 0x1b]
push eax
call fcn.00416310
mov eax, esi
mov ecx, ebx
sar eax, 8
mov byte [esp + 0x1b], al
lea eax, [esp + 0x1b]
push eax
call fcn.00416310
mov eax, esi
mov ecx, ebx
mov byte [esp + 0x1b], al
lea eax, [esp + 0x1b]
push eax
call fcn.00416310
mov eax, dword [edi]
mov edi, dword [eax]
cmp edi, eax
je 0x4233be
mov byte [esp + 0x3a], 1
lea ecx, [edi + 0x10]
mov edx, ebx
call fcn.00421150
mov eax, dword [edi + 0x2c]
mov ecx, dword [ebx + 4]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x3a]
cmp eax, ecx
jae 0x42280c
mov esi, dword [ebx]
cmp esi, eax
ja 0x42280c
mov edx, dword [ebx + 8]
mov ebp, eax
sub ebp, esi
cmp ecx, edx
jne 0x4227e9
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x4227e9
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x4227da
xor edx, edx
jmp 0x4227dc
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
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 0x42286e
mov al, byte [eax + ebp]
mov byte [ecx], al
jmp 0x42286e
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x422851
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x422851
mov esi, dword [ebx]
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x422842
xor edx, edx
jmp 0x422844
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
mov eax, dword [ebx + 4]
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x8c], 1
test eax, eax
je 0x42286e
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 0x422906
mov esi, dword [ebx]
cmp esi, eax
ja 0x422906
mov edx, dword [ebx + 8]
mov ebp, eax
sub ebp, esi
cmp ecx, edx
jne 0x4228e3
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x4228e3
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x4228d4
xor edx, edx
jmp 0x4228d6
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
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 0x42296b
mov al, byte [eax + ebp]
mov byte [ecx], al
jmp 0x42296b
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x42294b
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x42294b
mov esi, dword [ebx]
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x42293c
xor edx, edx
jmp 0x42293e
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
mov eax, dword [ebx + 4]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x8c], 3
test eax, eax
je 0x42296b
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 0x422a03
mov esi, dword [ebx]
cmp esi, eax
ja 0x422a03
mov edx, dword [ebx + 8]
mov ebp, eax
sub ebp, esi
cmp ecx, edx
jne 0x4229e0
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x4229e0
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x4229d1
xor edx, edx
jmp 0x4229d3
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
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 0x422a68
mov al, byte [eax + ebp]
mov byte [ecx], al
jmp 0x422a68
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x422a48
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x422a48
mov esi, dword [ebx]
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x422a39
xor edx, edx
jmp 0x422a3b
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
mov eax, dword [ebx + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x8c], 5
test eax, eax
je 0x422a68
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 0x422b00
mov esi, dword [ebx]
cmp esi, eax
ja 0x422b00
mov edx, dword [ebx + 8]
mov ebp, eax
sub ebp, esi
cmp ecx, edx
jne 0x422add
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x422add
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x422ace
xor edx, edx
jmp 0x422ad0
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
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 0x422b65
mov al, byte [eax + ebp]
mov byte [ecx], al
jmp 0x422b65
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x422b45
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x422b45
mov esi, dword [ebx]
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x422b36
xor edx, edx
jmp 0x422b38
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
mov eax, dword [ebx + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x8c], 7
test eax, eax
je 0x422b65
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 0x422bf6
mov esi, dword [ebx]
cmp esi, eax
ja 0x422bf6
mov edx, dword [ebx + 8]
mov ebp, eax
sub ebp, esi
cmp ecx, edx
jne 0x422bd3
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x422bd3
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x422bc4
xor edx, edx
jmp 0x422bc6
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
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 0x422c5b
mov al, byte [eax + ebp]
mov byte [ecx], al
jmp 0x422c5b
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x422c3b
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x422c3b
mov esi, dword [ebx]
mov eax, esi
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, esi
sub edx, esi
mov esi, edx
or eax, 0xffffffff
shr esi, 1
inc ecx
sub eax, esi
cmp eax, edx
jae 0x422c2c
xor edx, edx
jmp 0x422c2e
add edx, esi
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
mov eax, dword [ebx + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x8c], 9
test eax, eax
je 0x422c5b
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 0x42336b
mov byte [esp + 0x35], 1
jmp 0x422c80
lea ecx, [esi + 0x10]
mov edx, ebx
call fcn.00421150
mov eax, dword [esi + 0x28]
mov ecx, dword [ebx + 4]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x35]
cmp eax, ecx
jae 0x422d11
mov ebp, dword [ebx]
cmp ebp, eax
ja 0x422d11
mov edx, dword [ebx + 8]
sub eax, ebp
mov dword [esp + 0x1c], eax
cmp ecx, edx
jne 0x422ceb
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x422ceb
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x422cdc
xor edx, edx
jmp 0x422cde
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
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 0x422d73
mov al, byte [eax]
mov byte [ecx], al
jmp 0x422d73
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x422d56
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x422d56
mov ebp, dword [ebx]
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x422d47
xor edx, edx
jmp 0x422d49
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
mov eax, dword [ebx + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x8c], 0xb
test eax, eax
je 0x422d73
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 0x422e10
mov ebp, dword [ebx]
cmp ebp, eax
ja 0x422e10
mov edx, dword [ebx + 8]
sub eax, ebp
mov dword [esp + 0x1c], eax
cmp ecx, edx
jne 0x422dea
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x422dea
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x422ddb
xor edx, edx
jmp 0x422ddd
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
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 0x422e75
mov al, byte [eax]
mov byte [ecx], al
jmp 0x422e75
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x422e55
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x422e55
mov ebp, dword [ebx]
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x422e46
xor edx, edx
jmp 0x422e48
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
mov eax, dword [ebx + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x8c], 0xd
test eax, eax
je 0x422e75
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 0x422f12
mov ebp, dword [ebx]
cmp ebp, eax
ja 0x422f12
mov edx, dword [ebx + 8]
sub eax, ebp
mov dword [esp + 0x1c], eax
cmp ecx, edx
jne 0x422eec
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x422eec
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x422edd
xor edx, edx
jmp 0x422edf
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
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 0x422f77
mov al, byte [eax]
mov byte [ecx], al
jmp 0x422f77
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x422f57
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x422f57
mov ebp, dword [ebx]
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x422f48
xor edx, edx
jmp 0x422f4a
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
mov eax, dword [ebx + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x8c], 0xf
test eax, eax
je 0x422f77
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 0x423014
mov ebp, dword [ebx]
cmp ebp, eax
ja 0x423014
mov edx, dword [ebx + 8]
sub eax, ebp
mov dword [esp + 0x1c], eax
cmp ecx, edx
jne 0x422fee
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x422fee
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x422fdf
xor edx, edx
jmp 0x422fe1
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
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 0x423079
mov al, byte [eax]
mov byte [ecx], al
jmp 0x423079
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x423059
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x423059
mov ebp, dword [ebx]
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x42304a
xor edx, edx
jmp 0x42304c
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
mov eax, dword [ebx + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x8c], 0x11
test eax, eax
je 0x423079
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 0x42310f
mov ebp, dword [ebx]
cmp ebp, eax
ja 0x42310f
mov edx, dword [ebx + 8]
sub eax, ebp
mov dword [esp + 0x1c], eax
cmp ecx, edx
jne 0x4230e9
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x4230e9
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x4230da
xor edx, edx
jmp 0x4230dc
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
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 0x423174
mov al, byte [eax]
mov byte [ecx], al
jmp 0x423174
mov edx, dword [ebx + 8]
cmp ecx, edx
jne 0x423154
mov eax, edx
sub eax, ecx
cmp eax, 1
jae 0x423154
mov ebp, dword [ebx]
mov eax, ebp
sub eax, ecx
dec eax
cmp eax, 1
jb 0x4233e4
sub ecx, ebp
sub edx, ebp
mov ebp, edx
or eax, 0xffffffff
shr ebp, 1
inc ecx
sub eax, ebp
cmp eax, edx
jae 0x423145
xor edx, edx
jmp 0x423147
add edx, ebp
cmp edx, ecx
cmovb edx, ecx
mov ecx, ebx
push edx
call fcn.00416510
mov eax, dword [ebx + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x8c], 0x13
test eax, eax
je 0x423174
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.0x42318f
jmp dword [eax*4 + 0x4233f4]
cmp dword [esi + 0x28], 1
jne 0x4231b8
mov eax, dword [esi + 0x30]
sub eax, dword [esi + 0x2c]
cmp eax, 4
jne 0x4231b8
mov eax, dword [esi + 0x2c]
mov edx, ebx
mov ecx, dword [eax]
call fcn.00420df0
jmp case.0x42318f.0
xor ecx, ecx
mov edx, ebx
call fcn.00420df0
jmp case.0x42318f.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.00420cb0
mov byte [esp + 0x8c], 0x15
mov edx, ebx
mov ecx, eax
call fcn.00421150
mov byte [esp + 0x8c], 0x14
cmp dword [esp + 0x6c], 8
jb 0x423236
push dword [esp + 0x58]
call fcn.00461b75
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 0x42326b
push dword [esp + 0x40]
call fcn.00461b75
add esp, 4
xor eax, eax
mov dword [esp + 0x54], 7
mov dword [esp + 0x50], 0
mov word [esp + 0x40], ax
jmp case.0x42318f.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 0x4232c1
xor edx, edx
mov dword [esp + 0x74], ebp
xor ecx, ecx
jmp 0x4232e4
lea eax, [esi + 0x2c]
push eax
lea ecx, [esp + 0x74]
call fcn.004250e0
mov ebp, dword [esp + 0x70]
mov edx, dword [esp + 0x74]
cmp ebp, edx
jne 0x4232e0
xor edx, edx
xor ecx, ecx
jmp 0x4232e4
sub edx, ebp
mov ecx, ebp
push ebx
call fcn.00420ee0
add esp, 4
mov dword [esp + 0x8c], 0xffffffff
test ebp, ebp
je case.0x42318f.0
push ebp
call fcn.00461b75
add esp, 4
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
cmp byte [esi + 0xd], 0
jne 0x423362
mov eax, dword [esi + 8]
cmp byte [eax + 0xd], 0
jne 0x423342
mov esi, eax
mov eax, dword [esi]
cmp byte [eax + 0xd], 0
jne 0x423362
mov esi, eax
mov eax, dword [esi]
cmp byte [eax + 0xd], 0
je 0x423336
jmp 0x423362
mov eax, dword [esi + 4]
cmp byte [eax + 0xd], 0
jne 0x423360
jmp 0x423350
cmp esi, dword [eax + 8]
jne 0x423360
mov esi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0xd], 0
je 0x423350
mov esi, eax
cmp esi, dword [edi + 0x28]
jne 0x422c80
cmp byte [edi + 0xd], 0
jne 0x4233b2
mov eax, dword [edi + 8]
cmp byte [eax + 0xd], 0
jne 0x423390
mov edi, eax
mov eax, dword [edi]
cmp byte [eax + 0xd], 0
jne 0x4233b2
mov edi, eax
mov eax, dword [edi]
cmp byte [eax + 0xd], 0
je 0x423384
jmp 0x4233b2
mov eax, dword [edi + 4]
cmp byte [eax + 0xd], 0
jne 0x4233b0
lea esp, [esp]
cmp edi, dword [eax + 8]
jne 0x4233b0
mov edi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0xd], 0
je 0x4233a0
mov edi, eax
mov eax, dword [esp + 0x3c]
cmp edi, dword [eax]
jne 0x422780
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.00461397
add esp, 0x7c
ret 4
push str.vector_T__too_long
call fcn.0045d66a
xor al, al
jmp 0x4233c0