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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x118
mov esi, esp
mov dword [esi + 0x100], ebp
mov dword [esi + 0x104], esp
mov dword [esi + 0x110], 0xffffffff
mov dword [esi + 0x10c], 0x503620
mov ebx, dword [ebp + 8]
lea eax, [esi + 0x108]
mov ecx, dword fs:[0]
mov dword [esi + 0x108], ecx
mov dword fs:[0], eax
mov eax, dword [ebx + 4]
cmp dword [ebx], 0
mov dword [ebx], 0
je 0x4fdc5e
mov dword [ebx + 0x30], eax
mov eax, dword [0x69b710]
mov eax, dword [eax]
test eax, eax
je 0x4fed77
lea eax, [esi + 0xd8]
mov dword [esi + 0xd8], 2
mov dword [esi + 0xe8], 0
mov dword [esi + 0x68], eax
mov eax, dword [0x69b710]
mov eax, dword [eax]
test eax, eax
je 0x4fee12
lea eax, [ebx + 8]
lea ecx, [esi + 8]
mov dword [esi + 0x2c], 0
mov dword [esi + 0xf0], eax
nop dword [eax]
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 8]
mov ebx, dword [edx]
mov edi, dword [edx + 4]
mov dword [esi + 4], eax
mov eax, dword [eax + 4]
mov edx, edi
cmp ebx, eax
sbb edx, 0
jae 0x4fee47
cmp eax, ebx
je 0x4fee47
jb 0x4ff0d5
mov eax, dword [esi + 4]
mov dword [esi + 0x64], ebx
mov eax, dword [eax]
movzx eax, byte [eax + ebx]
test al, al
js 0x4fe1b5
test al, 0x40
jne 0x4fe2c8
movzx edx, al
and edx, 0xf0
je 0x4fe59b
cmp edx, 0x10
je 0x4fe4a6
and al, 0xe0
cmp al, 0x20
jne 0x4feed2
mov eax, dword [0x69b710]
mov eax, dword [eax]
test eax, eax
je 0x4fddc0
test byte [esi + 0x2c], 1
jne 0x4feee2
mov edx, dword [ebp + 0xc]
mov dword [esi + 0x110], 1
push 5
call fcn.00500130
add esp, 4
cmp byte [esi + 8], 0
jne 0x4feef2
mov edx, dword [esi + 0xc]
mov ebx, dword [ebp + 8]
cmp edx, dword [ebx + 0x30]
mov dword [esi + 0xf4], edx
ja 0x4fef04
mov eax, dword [0x69b710]
mov eax, dword [eax]
cmp eax, 1
ja 0x4fdda0
movzx eax, byte [0x69a9a0]
lea ecx, [esi + 8]
test al, al
je 0x4fdf70
movzx ecx, al
mov dword [esi + 4], edx
cmp ecx, 1
je 0x4fde13
cmp ecx, 2
jne 0x4fddf8
mov al, 2
jmp 0x4fde13
lea ecx, [esi + 8]
mov dword [ebx + 0x1c], edx
cmp dword [ebx + 0x18], edx
ja 0x4fe0fc
jmp 0x4fdf7c
movzx eax, byte [0x69a994]
test al, al
je 0x4fdd29
movzx ecx, al
mov dword [esi + 0x3c], edi
cmp ecx, 1
je 0x4fdfc6
cmp ecx, 2
jne 0x4fdfa4
mov dword [esi + 0x110], 1
mov al, 2
jmp 0x4fdfc6
push 0x69a998
call fcn.0059e2f0
add esp, 4
mov edx, dword [esi + 4]
test al, al
lea ecx, [esi + 8]
je 0x4fe0d9
movzx eax, al
push eax
push dword [0x69a998]
call fcn.005313d0
add esp, 8
mov ebx, dword [ebp + 8]
mov edx, dword [esi + 4]
test al, al
lea ecx, [esi + 8]
je 0x4fdf70
mov eax, dword [0x69a998]
mov ecx, dword [eax + 0x20]
test ecx, ecx
je 0x4ff125
mov edx, dword [eax + 0x24]
mov ebx, dword [eax + 0x1c]
mov edi, dword [eax + 0x28]
cmp ecx, 1
mov dword [esi + 0x40], 0x61c964
mov dword [esi + 0x44], 1
mov dword [esi + 0x50], 0
mov dword [esi + 0x48], 0x61c588
mov dword [esi + 0x4c], 0
mov dword [esi + 0xbc], ebx
mov dword [esi + 0xc0], ecx
mov dword [esi + 0xc4], edx
mov dword [esi + 0xc8], edi
mov dword [esi + 4], edx
mov dword [esi + 0xcc], 0
je 0x4ff10c
mov edx, dword [ebp + 8]
cmp ecx, 2
mov dword [esi + 0x90], ebx
mov dword [esi + 0x94], ecx
mov edx, dword [edx + 0x18]
mov dword [esi + 0xfc], edx
mov edx, dword [esi + 4]
mov dword [esi + 0x98], edx
mov dword [esi + 0x9c], edi
mov dword [esi + 0xa0], 1
jbe 0x4ff0f3
mov dword [esi + 0x6c], ebx
mov dword [esi + 0x70], ecx
mov dword [esi + 0x74], edx
mov dword [esi + 0x78], edi
lea edi, [esi + 8]
lea ecx, [eax + 0x1c]
mov dword [esi + 0x7c], 2
mov dword [esi + 0xb0], edi
mov dword [esi + 0xb4], 3
mov dword [esi + 0xb8], ecx
lea ecx, [esi + 0xbc]
mov dword [esi + 8], ecx
lea ecx, [esi + 0x40]
mov dword [esi + 0xc], ecx
lea ecx, [esi + 0x90]
mov dword [esi + 0x10], 0x61c838
mov dword [esi + 0x14], ecx
lea ecx, [esi + 0xfc]
mov dword [esi + 0x18], ecx
lea ecx, [esi + 0x6c]
mov dword [esi + 0x1c], 0x61c858
mov dword [esi + 0x20], ecx
lea ecx, [esi + 0xf4]
mov dword [esi + 0x24], ecx
lea ecx, [esi + 0xb0]
mov dword [esi + 0x28], 0x61c858
push ecx
push eax
call fcn.00531b00
add esp, 8
mov ebx, dword [ebp + 8]
mov edx, dword [esi + 0xf4]
lea ecx, [esi + 8]
nop word [eax + eax]
mov dword [ebx + 0x1c], edx
cmp dword [ebx + 0x18], edx
ja 0x4fe0fc
mov edx, dword [ebp + 0xc]
push 0
call fcn.005002c0
add esp, 4
mov eax, dword [esi + 8]
push dword [esi + 0x10]
push dword [esi + 0xc]
lea ecx, [esi + 0x14]
push ecx
call dword [eax + 8]
add esp, 0xc
lea ecx, [esi + 8]
jmp 0x4fdcb0
mov dword [esi + 0x110], 1
push 0x69a98c
call fcn.0059e2f0
add esp, 4
test al, al
lea ecx, [esi + 8]
je 0x4fdd29
mov ecx, dword [0x69a98c]
movzx eax, al
mov dword [esi + 0x110], 1
push eax
push ecx
call fcn.005313d0
add esp, 8
test al, al
lea ecx, [esi + 8]
je 0x4fdd29
mov eax, dword [0x69a98c]
mov ecx, dword [eax + 0x20]
test ecx, ecx
je 0x4ff157
mov ebx, dword [eax + 0x1c]
mov edx, dword [eax + 0x24]
mov edi, dword [eax + 0x28]
mov dword [esi + 0x6c], ebx
mov dword [esi + 0x70], ecx
mov dword [esi + 0x74], edx
mov dword [esi + 0x38], edx
mov edx, dword [esi + 4]
mov dword [esi + 0x78], edi
mov dword [esi + 0x7c], 0
mov dword [esi + 0x34], edi
mov dword [esi + 0xf8], ebx
mov ebx, dword [esi + 0x64]
mov edi, dword [edx + 4]
mov edx, edi
sub edx, ebx
cmp ebx, edi
mov edi, 0
sbb dword [esi + 0x3c], 0
cmovae edx, edi
cmp ecx, 1
mov dword [esi + 0xb0], edx
je 0x4ff13e
mov edx, dword [esi + 0xf8]
mov dword [esi + 0xbc], 0x61c92c
mov dword [esi + 0x40], edx
mov dword [esi + 0x44], ecx
mov ecx, dword [esi + 0x38]
lea edx, [esi + 8]
mov dword [esi + 0x90], edx
mov dword [esi + 0x94], 2
mov dword [esi + 0x48], ecx
mov ecx, dword [esi + 0x34]
mov dword [esi + 0x4c], ecx
lea ecx, [eax + 0x1c]
mov dword [esi + 0x50], 1
mov dword [esi + 0x98], ecx
lea ecx, [esi + 0x6c]
mov dword [esi + 8], ecx
lea ecx, [esi + 0xb0]
mov dword [esi + 0xc], ecx
lea ecx, [esi + 0x40]
mov dword [esi + 0x10], 0x61c858
mov dword [esi + 0x14], ecx
lea ecx, [esi + 0xbc]
mov dword [esi + 0x18], ecx
lea ecx, [esi + 0x90]
mov dword [esi + 0x1c], 0x61c878
push ecx
push eax
call fcn.00531b00
add esp, 8
lea ecx, [esi + 8]
jmp 0x4fdd29
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x1c], edx
cmp dword [ebx + 0x18], edx
ja 0x4fe0fc
jmp 0x4fdf7c
cmp ecx, dword [ebx + 0x1c]
lea ecx, [esi + 8]
jbe 0x4fdf7c
mov eax, dword [ebx + 0x14]
test eax, eax
je 0x4ff0bc
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0xc]
mov edx, 0
lea eax, [eax + ecx - 1]
cmp eax, edi
cmovb edi, edx
sub eax, edi
lea eax, [eax + eax*8]
shl eax, 2
add eax, dword [ebx + 8]
push eax
call fcn.0052c930
add esp, 4
mov edi, dword [ebp + 8]
mov ecx, dword [edi + 0x18]
mov ebx, edi
sub ecx, eax
mov dword [edi + 0x18], ecx
mov edx, dword [edi + 0x14]
test edx, edx
je 0x4fe0f0
dec edx
mov dword [esi + 4], ecx
mov ecx, 0
mov dword [ebx + 0x14], edx
mov edi, dword [ebx + 0xc]
add edx, dword [ebx + 0x10]
mov eax, dword [ebx + 8]
cmp edx, edi
cmovb edi, ecx
mov ecx, dword [esi + 4]
sub edx, edi
lea edi, [edx + edx*8]
mov edx, dword [eax + edi*4 + 0x20]
mov dword [esi + 0x28], edx
cmp dl, 8
movsd xmm0, qword [eax + edi*4 + 0x18]
movsd qword [esi + 0x20], xmm0
movsd xmm0, qword [eax + edi*4 + 0x10]
movsd qword [esi + 0x18], xmm0
movsd xmm0, qword [eax + edi*4]
movsd xmm1, qword [eax + edi*4 + 8]
movsd qword [esi + 0x10], xmm1
movsd qword [esi + 8], xmm0
je 0x4fe0f0
lea ecx, [esi + 8]
call fcn.00414600
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x18]
mov ebx, eax
jmp 0x4fe0f0
mov eax, dword [0x69b710]
mov eax, dword [eax]
test eax, eax
je 0x4fe690
mov edx, dword [ebp + 0xc]
mov dword [esi + 0x110], 1
lea ecx, [esi + 0x6c]
push 7
call fcn.00500130
add esp, 4
cmp byte [esi + 0x6c], 0
jne 0x4ff0a6
mov edx, dword [esi + 0xf0]
lea ecx, [esi + 8]
push dword [esi + 0x70]
call fcn.005004e0
add esp, 4
movzx eax, byte [esi + 0x28]
movzx ebx, byte [esi + 8]
cmp al, 8
je 0x4fef06
lea edx, [esi + 9]
lea edi, [esi + 0x41]
mov byte [esi + 0x31], 1
mov dword [esi + 0x110], 8
movsd xmm0, qword [edx + 0x17]
movsd xmm1, qword [edx + 0x10]
movsd xmm2, qword [edx]
movzx ecx, byte [edx + 0x22]
movsd qword [edi + 0x17], xmm0
movsd qword [edi + 0x10], xmm1
movsd xmm1, qword [edx + 8]
movsd qword [edi], xmm2
movsd qword [edi + 8], xmm1
mov byte [edi + 0x22], cl
movzx ecx, word [edx + 0x20]
mov edx, dword [ebp + 0xc]
mov word [edi + 0x20], cx
mov byte [esi + 0x40], bl
mov byte [esi + 0x60], al
lea ecx, [esi + 8]
push 0
call fcn.005002c0
add esp, 4
mov eax, dword [esi + 8]
mov edx, dword [esi + 0x10]
mov ecx, dword [esi + 0xc]
mov eax, dword [eax + 8]
mov byte [esi + 0x31], 1
push edx
push ecx
lea ecx, [esi + 0x14]
push ecx
call eax
add esp, 0xc
movsd xmm1, qword [esi + 0x50]
mov eax, dword [esi + 0x60]
movsd xmm0, qword [esi + 0x58]
movsd xmm2, qword [esi + 0x40]
mov ecx, dword [ebp + 0x10]
lea edx, [esi + 8]
mov byte [esi + 0x31], 0
movsd qword [esi + 0x18], xmm1
movsd xmm1, qword [esi + 0x48]
mov dword [esi + 0x28], eax
movsd qword [esi + 0x20], xmm0
movsd qword [esi + 8], xmm2
movsd qword [esi + 0x10], xmm1
call fcn.00500dd0
jmp 0x4fe8b7
mov eax, dword [0x69b710]
mov eax, dword [eax]
test eax, eax
je 0x4fe6c8
mov edx, dword [ebp + 8]
mov dword [esi + 0x110], 1
push 1
push dword [ebp + 0xc]
call fcn.004ff420
add esp, 8
movzx eax, byte [esi + 0x28]
movzx ebx, byte [esi + 8]
cmp al, 8
je 0x4fef06
lea edx, [esi + 9]
lea edi, [esi + 0x6d]
mov byte [esi + 2], 1
mov dword [esi + 0x110], 4
movsd xmm0, qword [edx + 0x17]
movsd xmm1, qword [edx + 0x10]
movsd xmm2, qword [edx]
movzx ecx, byte [edx + 0x22]
movsd qword [edi + 0x17], xmm0
movsd qword [edi + 0x10], xmm1
movsd xmm1, qword [edx + 8]
movsd qword [edi], xmm2
movsd qword [edi + 8], xmm1
mov byte [edi + 0x22], cl
movzx ecx, word [edx + 0x20]
lea edx, [esi + 0x6c]
mov word [edi + 0x20], cx
lea ecx, [esi + 0x40]
mov byte [esi + 0x6c], bl
mov byte [esi + 0x8c], al
call fcn.00503310
lea eax, [esi + 0x40]
mov byte [esi + 3], 1
mov dword [esi + 0x110], 5
push eax
call fcn.0052c930
add esp, 4
mov ebx, dword [ebp + 8]
mov dword [esi + 4], eax
nop
mov edi, dword [ebx + 0x18]
mov eax, dword [esi + 4]
mov ecx, dword [ebx + 0x1c]
lea edx, [edi + eax]
cmp edx, ecx
jbe 0x4fe77b
mov dword [esi + 0x2c], edi
mov edi, dword [ebx + 0x14]
mov eax, ebx
mov dword [esi + 0x64], ecx
test edi, edi
je 0x4fe770
dec edi
mov ecx, 0
mov dword [eax + 0x14], edi
mov ebx, dword [eax + 0xc]
add edi, dword [eax + 0x10]
mov edx, dword [eax + 8]
cmp edi, ebx
cmovb ebx, ecx
sub edi, ebx
lea edi, [edi + edi*8]
movsd xmm0, qword [edx + edi*4 + 0x18]
movsd qword [esi + 0xa8], xmm0
movsd xmm0, qword [edx + edi*4 + 0x10]
movsd qword [esi + 0xa0], xmm0
movsd xmm0, qword [edx + edi*4]
movsd xmm1, qword [edx + edi*4 + 8]
movsd qword [esi + 0x98], xmm1
movsd qword [esi + 0x90], xmm0
mov bh, byte [edx + edi*4 + 0x23]
mov bl, byte [edx + edi*4 + 0x20]
mov byte [esi + 0xbe], bh
cmp bl, 8
movzx edx, word [edx + edi*4 + 0x21]
mov word [esi + 0xbc], dx
je 0x4fe770
movsd xmm1, qword [esi + 0xa0]
movsd xmm0, qword [esi + 0xa8]
movsd xmm2, qword [esi + 0x90]
movzx eax, byte [esi + 0xbe]
lea ecx, [esi + 9]
mov dword [esi + 0x110], 7
movsd qword [esi + 0x18], xmm1
movsd xmm1, qword [esi + 0x98]
movsd qword [esi + 0x20], xmm0
movsd qword [esi + 8], xmm2
movsd qword [esi + 0x10], xmm1
mov byte [esi + 0x28], bl
mov byte [ecx + 0x22], al
movzx eax, word [esi + 0xbc]
mov word [ecx + 0x20], ax
lea eax, [esi + 8]
push eax
call fcn.0052c930
add esp, 4
mov ecx, dword [ebp + 8]
mov byte [esi + 3], 1
mov dword [esi + 0x110], 5
sub dword [ecx + 0x18], eax
lea ecx, [esi + 8]
call fcn.00414600
mov ebx, dword [ebp + 8]
jmp 0x4fe380
mov eax, dword [0x69b710]
mov eax, dword [eax]
test eax, eax
je 0x4fe700
mov edx, dword [ebp + 8]
mov dword [esi + 0x110], 1
push 0
push dword [ebp + 0xc]
call fcn.004ff420
add esp, 8
movzx eax, byte [esi + 0x28]
movzx ebx, byte [esi + 8]
cmp al, 8
je 0x4fef06
lea edx, [esi + 9]
lea edi, [esi + 0x41]
mov byte [esi + 0x33], 1
mov dword [esi + 0x110], 2
movsd xmm0, qword [edx + 0x17]
movsd xmm1, qword [edx + 0x10]
movsd xmm2, qword [edx]
movzx ecx, byte [edx + 0x22]
movsd qword [edi + 0x17], xmm0
movsd qword [edi + 0x10], xmm1
movsd xmm1, qword [edx + 8]
movsd qword [edi], xmm2
movsd qword [edi + 8], xmm1
mov byte [edi + 0x22], cl
movzx ecx, word [edx + 0x20]
mov edx, dword [ebp + 0xc]
mov word [edi + 0x20], cx
mov byte [esi + 0x40], bl
mov byte [esi + 0x60], al
lea ecx, [esi + 8]
push 0
call fcn.005002c0
add esp, 4
mov eax, dword [esi + 8]
mov edx, dword [esi + 0x10]
mov ecx, dword [esi + 0xc]
mov eax, dword [eax + 8]
mov byte [esi + 0x33], 1
push edx
push ecx
lea ecx, [esi + 0x14]
push ecx
call eax
add esp, 0xc
movsd xmm1, qword [esi + 0x50]
mov eax, dword [esi + 0x60]
movsd xmm0, qword [esi + 0x58]
movsd xmm2, qword [esi + 0x40]
mov ecx, dword [ebp + 0x10]
lea edx, [esi + 8]
mov byte [esi + 0x33], 0
movsd qword [esi + 0x18], xmm1
movsd xmm1, qword [esi + 0x48]
mov dword [esi + 0x28], eax
movsd qword [esi + 0x20], xmm0
movsd qword [esi + 8], xmm2
movsd qword [esi + 0x10], xmm1
call fcn.00500dd0
jmp 0x4fe8b7
mov eax, dword [0x69b710]
mov eax, dword [eax]
test eax, eax
je 0x4fe738
mov edx, dword [ebp + 8]
mov dword [esi + 0x110], 1
push 0
push dword [ebp + 0xc]
call fcn.004ff420
add esp, 8
movzx eax, byte [esi + 0x28]
movzx ebx, byte [esi + 8]
cmp al, 8
je 0x4fef06
lea edx, [esi + 9]
lea edi, [esi + 0x41]
mov byte [esi + 0x32], 1
mov dword [esi + 0x110], 3
movsd xmm0, qword [edx + 0x17]
movsd xmm1, qword [edx + 0x10]
movsd xmm2, qword [edx]
movzx ecx, byte [edx + 0x22]
movsd qword [edi + 0x17], xmm0
movsd qword [edi + 0x10], xmm1
movsd xmm1, qword [edx + 8]
movsd qword [edi], xmm2
movsd qword [edi + 8], xmm1
mov byte [edi + 0x22], cl
movzx ecx, word [edx + 0x20]
mov edx, dword [ebp + 0xc]
mov word [edi + 0x20], cx
mov byte [esi + 0x40], bl
mov byte [esi + 0x60], al
lea ecx, [esi + 8]
push 0
call fcn.005002c0
add esp, 4
mov eax, dword [esi + 8]
mov edx, dword [esi + 0x10]
mov ecx, dword [esi + 0xc]
mov eax, dword [eax + 8]
mov byte [esi + 0x32], 1
push edx
push ecx
lea ecx, [esi + 0x14]
push ecx
call eax
add esp, 0xc
movsd xmm1, qword [esi + 0x50]
mov eax, dword [esi + 0x60]
movsd xmm0, qword [esi + 0x58]
movsd xmm2, qword [esi + 0x40]
mov ecx, dword [ebp + 0x10]
lea edx, [esi + 8]
mov byte [esi + 0x32], 0
movsd qword [esi + 0x18], xmm1
movsd xmm1, qword [esi + 0x48]
mov dword [esi + 0x28], eax
movsd qword [esi + 0x20], xmm0
movsd qword [esi + 8], xmm2
movsd qword [esi + 0x10], xmm1
call fcn.00500dd0
jmp 0x4fe8b7
movzx eax, byte [0x69a964]
test al, al
je 0x4fe1c4
movzx ecx, al
mov dword [esi + 0x3c], edi
cmp ecx, 1
je 0x4fe8e3
cmp ecx, 2
jne 0x4fe8c4
mov dword [esi + 0x110], 1
mov al, 2
jmp 0x4fe8e3
movzx eax, byte [0x69a970]
test al, al
je 0x4fe2d7
movzx ecx, al
mov dword [esi + 0x3c], edi
cmp ecx, 1
je 0x4fea0c
cmp ecx, 2
jne 0x4fe9ea
mov dword [esi + 0x110], 1
mov al, 2
jmp 0x4fea0c
movzx eax, byte [0x69a988]
test al, al
je 0x4fe4b5
movzx ecx, al
mov dword [esi + 0x3c], edi
cmp ecx, 1
je 0x4feb3b
cmp ecx, 2
jne 0x4feb19
mov dword [esi + 0x110], 1
mov al, 2
jmp 0x4feb3b
movzx eax, byte [0x69a97c]
test al, al
je 0x4fe5aa
movzx ecx, al
mov dword [esi + 0x3c], edi
cmp ecx, 1
je 0x4fec6a
cmp ecx, 2
jne 0x4fec48
mov dword [esi + 0x110], 1
mov al, 2
jmp 0x4fec6a
mov edx, dword [esi + 0x2c]
mov ecx, dword [esi + 0x64]
mov ebx, eax
add edx, dword [esi + 4]
cmp edx, ecx
jbe 0x4fe79a
lea ecx, [esi + 0x40]
mov byte [esi + 2], 1
mov dword [esi + 0x110], 4
call fcn.00414600
jmp 0x4fe845
mov eax, dword [esi + 0x60]
movsd xmm1, qword [esi + 0x50]
mov dword [ebx + 0x18], edx
movsd xmm0, qword [esi + 0x58]
movsd xmm2, qword [esi + 0x40]
mov ecx, dword [ebx + 0x14]
mov dword [esi + 0x28], eax
mov eax, dword [ebx + 0xc]
movsd qword [esi + 0x18], xmm1
movsd xmm1, qword [esi + 0x48]
movsd qword [esi + 0x20], xmm0
movsd qword [esi + 8], xmm2
cmp ecx, eax
movsd qword [esi + 0x10], xmm1
jne 0x4fe7f3
mov ecx, dword [esi + 0xf0]
mov dword [esi + 0x110], 6
call fcn.00529920
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0xc]
mov ecx, dword [ebx + 0x14]
mov edx, dword [ebx + 0x10]
movsd xmm0, qword [esi + 8]
movsd xmm1, qword [esi + 0x10]
movsd xmm2, qword [esi + 0x18]
movsd xmm3, qword [esi + 0x20]
mov edi, dword [esi + 0x28]
dec edx
add eax, edx
cmovae eax, edx
mov edx, dword [ebx + 8]
inc ecx
mov dword [ebx + 0x10], eax
lea eax, [eax + eax*8]
mov dword [ebx + 0x14], ecx
mov dword [edx + eax*4 + 0x20], edi
movsd qword [edx + eax*4 + 0x18], xmm3
movsd qword [edx + eax*4 + 0x10], xmm2
movsd qword [edx + eax*4 + 8], xmm1
movsd qword [edx + eax*4], xmm0
mov dword [esi + 0x110], 4
mov edx, dword [ebp + 0xc]
mov byte [esi + 2], 1
lea ecx, [esi + 8]
push 0
call fcn.005002c0
add esp, 4
mov eax, dword [esi + 8]
mov edx, dword [esi + 0x10]
mov ecx, dword [esi + 0xc]
mov eax, dword [eax + 8]
mov byte [esi + 2], 1
push edx
push ecx
lea ecx, [esi + 0x14]
push ecx
call eax
add esp, 0xc
movsd xmm1, qword [esi + 0x7c]
mov eax, dword [esi + 0x8c]
movsd xmm0, qword [esi + 0x84]
movsd xmm2, qword [esi + 0x6c]
mov ecx, dword [ebp + 0x10]
lea edx, [esi + 8]
mov byte [esi + 2], 0
movsd qword [esi + 0x18], xmm1
movsd xmm1, qword [esi + 0x74]
mov dword [esi + 0x28], eax
movsd qword [esi + 0x20], xmm0
movsd qword [esi + 8], xmm2
movsd qword [esi + 0x10], xmm1
call fcn.00500dd0
mov al, 1
lea ecx, [esi + 8]
mov dword [esi + 0x2c], eax
jmp 0x4fdcb0
mov dword [esi + 0x110], 1
push 0x69a95c
call fcn.0059e2f0
add esp, 4
test al, al
je 0x4fe1c4
mov ecx, dword [0x69a95c]
movzx eax, al
mov dword [esi + 0x110], 1
push eax
push ecx
call fcn.005313d0
add esp, 8
test al, al
je 0x4fe1c4
mov eax, dword [0x69a95c]
mov ecx, dword [eax + 0x20]
test ecx, ecx
je 0x4ff189
mov ebx, dword [eax + 0x1c]
mov edx, dword [eax + 0x24]
mov edi, dword [eax + 0x28]
mov dword [esi + 0x6c], ebx
mov dword [esi + 0x70], ecx
mov dword [esi + 0x74], edx
mov dword [esi + 0x2c], edx
mov edx, dword [esi + 4]
mov dword [esi + 0x78], edi
mov dword [esi + 0x7c], 0
mov dword [esi + 0x38], edi
mov dword [esi + 0x34], ebx
mov ebx, dword [esi + 0x64]
mov edi, dword [edx + 4]
mov edx, edi
sub edx, ebx
cmp ebx, edi
mov edi, 0
sbb dword [esi + 0x3c], 0
cmovae edx, edi
cmp ecx, 1
mov dword [esi + 0xb0], edx
je 0x4ff1a2
mov edx, dword [esi + 0x34]
mov dword [esi + 0xbc], 0x61c870
mov dword [esi + 0x40], edx
mov dword [esi + 0x44], ecx
mov ecx, dword [esi + 0x2c]
lea edx, [esi + 8]
mov dword [esi + 0x90], edx
mov dword [esi + 0x94], 2
mov dword [esi + 0x48], ecx
mov ecx, dword [esi + 0x38]
mov dword [esi + 0x4c], ecx
lea ecx, [eax + 0x1c]
mov dword [esi + 0x50], 1
mov dword [esi + 0x98], ecx
lea ecx, [esi + 0x6c]
mov dword [esi + 8], ecx
lea ecx, [esi + 0xb0]
mov dword [esi + 0xc], ecx
lea ecx, [esi + 0x40]
mov dword [esi + 0x10], 0x61c858
mov dword [esi + 0x14], ecx
lea ecx, [esi + 0xbc]
mov dword [esi + 0x18], ecx
lea ecx, [esi + 0x90]
mov dword [esi + 0x1c], 0x61c878
push ecx
push eax
call fcn.00531b00
add esp, 8
jmp 0x4fe1c4
mov dword [esi + 0x110], 1
push 0x69a968
call fcn.0059e2f0
add esp, 4
test al, al
lea ecx, [esi + 8]
je 0x4fe2d7
mov ecx, dword [0x69a968]
movzx eax, al
mov dword [esi + 0x110], 1
push eax
push ecx
call fcn.005313d0
add esp, 8
test al, al
lea ecx, [esi + 8]
je 0x4fe2d7
mov eax, dword [0x69a968]
mov ecx, dword [eax + 0x20]
test ecx, ecx
je 0x4ff1bb
mov ebx, dword [eax + 0x1c]
mov edx, dword [eax + 0x24]
mov edi, dword [eax + 0x28]
mov dword [esi + 0x6c], ebx
mov dword [esi + 0x70], ecx
mov dword [esi + 0x74], edx
mov dword [esi + 0x2c], edx
mov edx, dword [esi + 4]
mov dword [esi + 0x78], edi
mov dword [esi + 0x7c], 0
mov dword [esi + 0x38], edi
mov dword [esi + 0x34], ebx
mov ebx, dword [esi + 0x64]
mov edi, dword [edx + 4]
mov edx, edi
sub edx, ebx
cmp ebx, edi
mov edi, 0
sbb dword [esi + 0x3c], 0
cmovae edx, edi
cmp ecx, 1
mov dword [esi + 0xb0], edx
je 0x4ff1d1
mov edx, dword [esi + 0x34]
mov dword [esi + 0xbc], 0x61c8ac
mov dword [esi + 0x40], edx
mov dword [esi + 0x44], ecx
mov ecx, dword [esi + 0x2c]
lea edx, [esi + 8]
mov dword [esi + 0x90], edx
mov dword [esi + 0x94], 2
mov dword [esi + 0x48], ecx
mov ecx, dword [esi + 0x38]
mov dword [esi + 0x4c], ecx
lea ecx, [eax + 0x1c]
mov dword [esi + 0x50], 1
mov dword [esi + 0x98], ecx
lea ecx, [esi + 0x6c]
mov dword [esi + 8], ecx
lea ecx, [esi + 0xb0]
mov dword [esi + 0xc], ecx
lea ecx, [esi + 0x40]
mov dword [esi + 0x10], 0x61c858
mov dword [esi + 0x14], ecx
lea ecx, [esi + 0xbc]
mov dword [esi + 0x18], ecx
lea ecx, [esi + 0x90]
mov dword [esi + 0x1c], 0x61c878
push ecx
push eax
call fcn.00531b00
add esp, 8
lea ecx, [esi + 8]
jmp 0x4fe2d7
mov dword [esi + 0x110], 1
push 0x69a980
call fcn.0059e2f0
add esp, 4
test al, al
lea ecx, [esi + 8]
je 0x4fe4b5
mov ecx, dword [0x69a980]
movzx eax, al
mov dword [esi + 0x110], 1
push eax
push ecx
call fcn.005313d0
add esp, 8
test al, al
lea ecx, [esi + 8]
je 0x4fe4b5
mov eax, dword [0x69a980]
mov ecx, dword [eax + 0x20]
test ecx, ecx
je 0x4ff229
mov ebx, dword [eax + 0x1c]
mov edx, dword [eax + 0x24]
mov edi, dword [eax + 0x28]
mov dword [esi + 0x6c], ebx
mov dword [esi + 0x70], ecx
mov dword [esi + 0x74], edx
mov dword [esi + 0x2c], edx
mov edx, dword [esi + 4]
mov dword [esi + 0x78], edi
mov dword [esi + 0x7c], 0
mov dword [esi + 0x38], edi
mov dword [esi + 0x34], ebx
mov ebx, dword [esi + 0x64]
mov edi, dword [edx + 4]
mov edx, edi
sub edx, ebx
cmp ebx, edi
mov edi, 0
sbb dword [esi + 0x3c], 0
cmovae edx, edi
cmp ecx, 1
mov dword [esi + 0xb0], edx
je 0x4ff213
mov edx, dword [esi + 0x34]
mov dword [esi + 0xbc], 0x61c908
mov dword [esi + 0x40], edx
mov dword [esi + 0x44], ecx
mov ecx, dword [esi + 0x2c]
lea edx, [esi + 8]
mov dword [esi + 0x90], edx
mov dword [esi + 0x94], 2
mov dword [esi + 0x48], ecx
mov ecx, dword [esi + 0x38]
mov dword [esi + 0x4c], ecx
lea ecx, [eax + 0x1c]
mov dword [esi + 0x50], 1
mov dword [esi + 0x98], ecx
lea ecx, [esi + 0x6c]
mov dword [esi + 8], ecx
lea ecx, [esi + 0xb0]
mov dword [esi + 0xc], ecx
lea ecx, [esi + 0x40]
mov dword [esi + 0x10], 0x61c858
mov dword [esi + 0x14], ecx
lea ecx, [esi + 0xbc]
mov dword [esi + 0x18], ecx
lea ecx, [esi + 0x90]
mov dword [esi + 0x1c], 0x61c878
push ecx
push eax
call fcn.00531b00
add esp, 8
lea ecx, [esi + 8]
jmp 0x4fe4b5
mov dword [esi + 0x110], 1
push 0x69a974
call fcn.0059e2f0
add esp, 4
test al, al
lea ecx, [esi + 8]
je 0x4fe5aa
mov ecx, dword [0x69a974]
movzx eax, al
mov dword [esi + 0x110], 1
push eax
push ecx
call fcn.005313d0
add esp, 8
test al, al
lea ecx, [esi + 8]
je 0x4fe5aa
mov eax, dword [0x69a974]
mov ecx, dword [eax + 0x20]
test ecx, ecx
je 0x4ff1fd
mov ebx, dword [eax + 0x1c]
mov edx, dword [eax + 0x24]
mov edi, dword [eax + 0x28]
mov dword [esi + 0x6c], ebx
mov dword [esi + 0x70], ecx
mov dword [esi + 0x74], edx
mov dword [esi + 0x2c], edx
mov edx, dword [esi + 4]
mov dword [esi + 0x78], edi
mov dword [esi + 0x7c], 0
mov dword [esi + 0x38], edi
mov dword [esi + 0x34], ebx
mov ebx, dword [esi + 0x64]
mov edi, dword [edx + 4]
mov edx, edi
sub edx, ebx
cmp ebx, edi
mov edi, 0
sbb dword [esi + 0x3c], 0
cmovae edx, edi
cmp ecx, 1
mov dword [esi + 0xb0], edx
je 0x4ff1e7
mov edx, dword [esi + 0x34]
mov dword [esi + 0xbc], 0x61c8dc
mov dword [esi + 0x40], edx
mov dword [esi + 0x44], ecx
mov ecx, dword [esi + 0x2c]
lea edx, [esi + 8]
mov dword [esi + 0x90], edx
mov dword [esi + 0x94], 2
mov dword [esi + 0x48], ecx
mov ecx, dword [esi + 0x38]
mov dword [esi + 0x4c], ecx
lea ecx, [eax + 0x1c]
mov dword [esi + 0x50], 1
mov dword [esi + 0x98], ecx
lea ecx, [esi + 0x6c]
mov dword [esi + 8], ecx
lea ecx, [esi + 0xb0]
mov dword [esi + 0xc], ecx
lea ecx, [esi + 0x40]
mov dword [esi + 0x10], 0x61c858
mov dword [esi + 0x14], ecx
lea ecx, [esi + 0xbc]
mov dword [esi + 0x18], ecx
lea ecx, [esi + 0x90]
mov dword [esi + 0x1c], 0x61c878
push ecx
push eax
call fcn.00531b00
add esp, 8
lea ecx, [esi + 8]
jmp 0x4fe5aa
movzx eax, byte [0x69a94c]
test al, al
je 0x4fdc6d
movzx ecx, al
cmp ecx, 1
je 0x4fed99
cmp ecx, 2
jne 0x4ff08c
mov al, 2
movzx eax, al
push eax
push dword [0x69a944]
call fcn.005313d0
add esp, 8
test al, al
je 0x4fdc6d
mov eax, dword [0x69a944]
mov dword [esi + 8], 0x61c588
mov dword [esi + 0xc], 0
lea edi, [esi + 0xd0]
lea ecx, [eax + 0x1c]
mov dword [esi + 0x10], ecx
lea ecx, [esi + 8]
push ecx
push eax
push edi
call fcn.005310b0
add esp, 0xc
cmp dword [esi + 0xd8], 2
lea eax, [esi + 0xd8]
mov dword [esi + 0x68], eax
je 0x4fdc8a
mov dword [esi + 0x110], 0
push edi
push eax
call fcn.00532240
mov ebx, dword [ebp + 8]
add esp, 8
jmp 0x4fdc8a
movzx eax, byte [0x69a958]
test al, al
je 0x4fdc99
movzx ecx, al
cmp ecx, 1
je 0x4fefd1
cmp ecx, 2
jne 0x4fefaf
mov dword [esi + 0x110], 1
mov al, 2
jmp 0x4fefd1
cmp dword [esi + 0xd8], 2
je 0x4feecb
lea eax, [esi + 0xd0]
mov dword [esi + 0x110], 0
push eax
push dword [esi + 0x68]
call fcn.00532270
add esp, 8
cmp dword [esi + 0xd8], 2
je 0x4feecb
mov ecx, dword [esi + 0xd4]
mov eax, dword [esi + 0xd0]
mov dword [esi + 0x110], 0xa
push ecx
push eax
push dword [esi + 0x68]
call fcn.005322a0
add esp, 0xc
mov eax, dword [esi + 0xd8]
cmp eax, 2
je 0x4feecb
test eax, eax
je 0x4feecb
mov eax, dword [esi + 0xdc]
lock dec dword [eax]
jne 0x4feecb
lea eax, [esi + 0xdc]
mov dword [esi + 0x110], 0xffffffff
push eax
call fcn.0042de60
add esp, 4
mov bl, 0xc
jmp 0x4fef99
mov bl, 3
cmp dword [esi + 0xd8], 2
jne 0x4fef13
jmp 0x4fef99
mov bl, 0xa
cmp dword [esi + 0xd8], 2
jne 0x4fef13
jmp 0x4fef99
movzx ebx, byte [esi + 9]
cmp dword [esi + 0xd8], 2
jne 0x4fef13
jmp 0x4fef99
mov bl, 0xa
cmp dword [esi + 0xd8], 2
je 0x4fef99
lea eax, [esi + 0xd0]
mov byte [esi + 4], bl
mov dword [esi + 0x110], 0
push eax
push dword [esi + 0x68]
call fcn.00532270
add esp, 8
cmp dword [esi + 0xd8], 2
movzx ebx, byte [esi + 4]
je 0x4fef99
mov ecx, dword [esi + 0xd4]
mov eax, dword [esi + 0xd0]
mov dword [esi + 0x110], 9
push ecx
push eax
push dword [esi + 0x68]
call fcn.005322a0
add esp, 0xc
mov eax, dword [esi + 0xd8]
movzx ebx, byte [esi + 4]
cmp eax, 2
je 0x4fef99
test eax, eax
je 0x4fef99
mov eax, dword [esi + 0xdc]
lock dec dword [eax]
jne 0x4fef99
lea eax, [esi + 0xdc]
mov dword [esi + 0x110], 0xffffffff
push eax
call fcn.0042de60
add esp, 4
mov eax, dword [esi + 0x108]
mov dword fs:[0], eax
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esi + 0x110], 1
push 0x69a950
call fcn.0059e2f0
add esp, 4
mov ebx, dword [ebp + 8]
test al, al
je 0x4fdc99
mov ecx, dword [0x69a950]
movzx eax, al
mov dword [esi + 0x110], 1
push eax
push ecx
call fcn.005313d0
add esp, 8
mov ebx, dword [ebp + 8]
test al, al
je 0x4fdc99
mov eax, dword [0x69a950]
mov edx, dword [eax + 0x20]
test edx, edx
je 0x4ff170
mov edi, dword [eax + 0x1c]
movsd xmm0, qword [eax + 0x24]
lea ecx, [eax + 0x1c]
lea ebx, [esi + 8]
mov dword [esi + 8], 0x61c830
mov dword [esi + 0xc], 1
mov dword [esi + 0x18], 0
mov dword [esi + 0x10], 0x61c588
mov dword [esi + 0x14], 0
mov dword [esi + 0x40], edi
lea edi, [esi + 0x40]
mov dword [esi + 0x44], edx
movlps qword [esi + 0x48], xmm0
mov dword [esi + 0x50], 0
mov dword [esi + 0x90], edi
lea edi, [esi + 0x90]
mov dword [esi + 0x94], ebx
mov dword [esi + 0x98], 0x61c838
mov dword [esi + 0x6c], edi
mov dword [esi + 0x70], 1
mov dword [esi + 0x74], ecx
lea ecx, [esi + 0x6c]
push ecx
push eax
call fcn.00531b00
add esp, 8
mov ebx, dword [ebp + 8]
jmp 0x4fdc99
push 0x69a944
call fcn.0059e2f0
add esp, 4
test al, al
jne 0x4fed99
jmp 0x4fdc6d
movzx ebx, byte [esi + 0x6d]
cmp dword [esi + 0xd8], 2
jne 0x4fef13
jmp 0x4fef99
push 0x61c9d4
push 0x28
push str.Size_of_table___0__but_no_headers_left_
call fcn.0059d660
add esp, 0xc
jmp 0x4ff23d
mov dword [esi + 0x110], 1
push 0x62cbc0
push eax
push ebx
call fcn.005a0f50
add esp, 0xc
jmp 0x4ff23d
push 0x61c934
push 0x22
push str.FieldSet_corrupted__this_is_a_bug_C:UsersLitch1.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8h2_0.3.21_srchpackdecoder.rs
call fcn.005a0a40
add esp, 0xc
jmp 0x4ff23d
push 0x61c934
push 0x22
push str.FieldSet_corrupted__this_is_a_bug_C:UsersLitch1.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8h2_0.3.21_srchpackdecoder.rs
call fcn.005a0a40
add esp, 0xc
jmp 0x4ff23d
push 0x61c934
push 0x22
push str.FieldSet_corrupted__this_is_a_bug_C:UsersLitch1.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8h2_0.3.21_srchpackdecoder.rs
call fcn.005a0a40
add esp, 0xc
jmp 0x4ff23d
push 0x61c910
push 0x22
push str.FieldSet_corrupted__this_is_a_bug_C:UsersLitch1.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8h2_0.3.21_srchpackdecoder.rs
call fcn.005a0a40
add esp, 0xc
jmp 0x4ff23d
push 0x61c910
push 0x22
push str.FieldSet_corrupted__this_is_a_bug_C:UsersLitch1.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8h2_0.3.21_srchpackdecoder.rs
call fcn.005a0a40
add esp, 0xc
jmp 0x4ff23d
push 0x61c818
push 0x22
push str.FieldSet_corrupted__this_is_a_bug_C:UsersLitch1.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8h2_0.3.21_srchpackdecoder.rs
call fcn.005a0a40
add esp, 0xc
jmp 0x4ff23d
push 0x61c848
push 0x22
push str.FieldSet_corrupted__this_is_a_bug_C:UsersLitch1.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8h2_0.3.21_srchpackdecoder.rs
call fcn.005a0a40
add esp, 0xc
jmp 0x4ff23d
push 0x61c848
push 0x22
push str.FieldSet_corrupted__this_is_a_bug_C:UsersLitch1.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8h2_0.3.21_srchpackdecoder.rs
call fcn.005a0a40
add esp, 0xc
jmp 0x4ff23d
push 0x61c888
push 0x22
push str.FieldSet_corrupted__this_is_a_bug_C:UsersLitch1.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8h2_0.3.21_srchpackdecoder.rs
call fcn.005a0a40
add esp, 0xc
jmp 0x4ff23d
push 0x61c888
push 0x22
push str.FieldSet_corrupted__this_is_a_bug_C:UsersLitch1.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8h2_0.3.21_srchpackdecoder.rs
call fcn.005a0a40
add esp, 0xc
jmp 0x4ff23d
push 0x61c8b4
push 0x22
push str.FieldSet_corrupted__this_is_a_bug_C:UsersLitch1.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8h2_0.3.21_srchpackdecoder.rs
call fcn.005a0a40
add esp, 0xc
jmp 0x4ff23d
push 0x61c8b4
push 0x22
push str.FieldSet_corrupted__this_is_a_bug_C:UsersLitch1.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8h2_0.3.21_srchpackdecoder.rs
call fcn.005a0a40
add esp, 0xc
jmp 0x4ff23d
push 0x61c8e4
push 0x22
push str.FieldSet_corrupted__this_is_a_bug_C:UsersLitch1.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8h2_0.3.21_srchpackdecoder.rs
call fcn.005a0a40
add esp, 0xc
jmp 0x4ff23d
push 0x61c8e4
push 0x22
push str.FieldSet_corrupted__this_is_a_bug_C:UsersLitch1.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8h2_0.3.21_srchpackdecoder.rs
call fcn.005a0a40
add esp, 0xc
ud2