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

Disassembly:
sub esp, 0x6c
push ebx
push ebp
push esi
mov esi, dword [esp + 0x84]
push edi
xor edi, edi
mov byte [esp + 0x13], 0
mov byte [esp + 0x14], 0
mov dword [esp + 0x18], edi
test esi, esi
je 0x4bf966
cmp dword [esi], 0xc0dedbad
jne 0x4bf966
mov ecx, dword [esp + 0x80]
cmp byte [ecx + 0x118], 0
je 0x4be7c0
mov edi, 0x2a
push esi
mov dword [esp + 0x1c], edi
call fcn.00424050
push 0
push edi
push esi
call fcn.004be160
add esp, 0x10
cmp dword [esi + 0x34], 0x10
je 0x4be7b9
mov eax, dword [esi + 0x7c]
mov dword [esi + 0x34], 0x10
dec dword [eax + 0x10]
mov eax, dword [esi + 0x7c]
cmp dword [eax + 0x10], 0
jne 0x4be786
push eax
call fcn.004c0240
add esp, 4
mov ebx, dword [esi + 0x18]
test ebx, ebx
je 0x4be7a9
push esi
push ebx
call fcn.004ce7d0
push 0
lea eax, [esi + 0x28]
push eax
lea eax, [ebx + 0x2b4]
push eax
call fcn.004d8340
add esp, 0x14
push esi
mov dword [esi + 0x18], 0
call fcn.004bcec0
add esp, 4
mov ecx, dword [esp + 0x80]
mov al, byte [ecx + 0x116]
xor ebx, ebx
mov byte [esp + 0x12], 0
mov byte [ecx + 0x116], bl
test al, al
je 0x4be7e9
mov eax, dword [ecx + 0x24]
test eax, eax
je 0x4be7e9
push dword [eax]
push ecx
call fcn.004be0f0
add esp, 8
mov ecx, dword [esi + 0x34]
lea ebp, [esi + 0x18]
lea eax, [ecx - 4]
cmp eax, 0xb
ja 0x4be800
cmp dword [ebp], ebx
je case.default.0x4be840
lea eax, [ecx - 3]
cmp eax, 0xc
ja 0x4be834
mov ebp, dword [esp + 0x84]
lea eax, [esp + 0x18]
push 0
push eax
lea eax, [esp + 0x1a]
push eax
push ebp
push esi
call fcn.004be590
mov edi, dword [esp + 0x2c]
add esp, 0x14
test al, al
jne 0x4bf749
lea ebp, [esi + 0x18]
mov ecx, dword [esi + 0x34]
cmp ecx, 0x11
ja case.default.0x4be840
jmp dword [ecx*4 + 0x4bf974]
push esi
call fcn.004d7320
mov edi, eax
add esp, 4
mov dword [esp + 0x18], edi
test edi, edi
jne case.0x4be840.1
cmp dword [esi + 0x34], 2
je 0x4be86b
mov dword [esi + 0x34], 2
push 1
lea eax, [esp + 0x40]
push esi
push eax
call fcn.004e0340
add esp, 0xc
push 2
lea eax, [esp + 0x50]
push esi
push eax
call fcn.004e0340
mov ebp, dword [esp + 0x90]
add esp, 0xc
movups xmm0, xmmword [eax]
movups xmmword [ebp], xmm0
mov eax, dword [esi + 0x1d8]
test eax, eax
je 0x4be8b1
push 0xa
push 0
push eax
push esi
call fcn.004bccb0
add esp, 0x10
mov eax, dword [esi + 0x1dc]
test eax, eax
je 0x4be8c9
push 2
push 0
push eax
push esi
call fcn.004bccb0
add esp, 0x10
cmp dword [esi + 0x34], 3
je 0x4be8e8
push esi
mov dword [esi + 0x34], 3
call fcn.004d7270
add esp, 4
jmp 0x4be8e8
mov ebp, dword [esp + 0x84]
lea eax, [esp + 0x15]
push eax
lea eax, [esp + 0x1b]
push eax
push esi
call fcn.004c9df0
mov edi, eax
add esp, 0xc
mov dword [esp + 0x18], edi
cmp edi, 0x59
jne 0x4be96f
cmp dword [esi + 0x34], 1
je 0x4be913
mov dword [esi + 0x34], 1
mov ebp, dword [esp + 0x80]
lea eax, [esi + 0x1c]
push eax
push esi
lea eax, [ebp + 0x24]
push eax
call fcn.004d8180
mov ecx, dword [esi + 0x14]
add esp, 0xc
mov eax, dword [esi + 0x10]
test ecx, ecx
je 0x4be93a
mov dword [ecx + 0x10], eax
jmp 0x4be93d
mov dword [ebp + 4], eax
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 0x14]
test ecx, ecx
je 0x4be95b
mov dword [ecx + 0x14], eax
xor edi, edi
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
mov dword [esp + 0x18], edi
jmp case.0x4be840.1
mov dword [ebp + 8], eax
xor edi, edi
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
mov dword [esp + 0x18], edi
jmp case.0x4be840.1
mov eax, dword [esi + 0x7c]
mov ecx, dword [eax + 0x24]
test ecx, ecx
je 0x4be984
push dword [ecx]
push eax
call fcn.004be0f0
add esp, 8
test edi, edi
jne case.0x4be840.1
push 3
lea eax, [esp + 0x60]
push esi
push eax
call fcn.004e0340
add esp, 0xc
movups xmm0, xmmword [eax]
movups xmmword [ebp], xmm0
mov eax, dword [esi + 0x34]
cmp byte [esp + 0x17], bl
je 0x4be9c1
cmp eax, 4
je case.0x4be840.1
mov dword [esi + 0x34], 4
jmp 0x4bf70f
or ebx, 0xffffffff
cmp byte [esp + 0x15], 0
je 0x4be9e0
cmp eax, 7
je case.0x4be840.1
mov dword [esi + 0x34], 7
jmp 0x4bf70f
cmp eax, 5
je case.0x4be840.1
mov dword [esi + 0x34], 5
jmp 0x4bf70f
mov eax, dword [ebp]
mov dword [esp + 0x1c], ebx
cmp byte [eax + 0x240], bl
je 0x4bea09
mov ebx, dword [eax + 0x78]
jmp 0x4bea19
cmp byte [eax + 0x249], bl
je 0x4bea16
mov ebx, dword [eax + 0x48]
jmp 0x4bea19
mov ebx, dword [eax + 0x30]
push dword [eax + 0xec]
push ebx
push esi
call fcn.004d8b10
add esp, 0xc
mov dword [esp + 0x1c], eax
test eax, eax
je 0x4bea5b
push ebx
push 0x58efa0
xor edi, edi
mov dword [esi + 0x918], eax
push esi
mov byte [esi + 0x92c], 1
mov dword [esp + 0x24], edi
call fcn.004cf0b0
mov eax, dword [esp + 0x28]
add esp, 0xc
test eax, eax
jne 0x4bea6f
lea eax, [esp + 0x1c]
push eax
push esi
call fcn.004d9750
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x80]
push esi
push ebx
call fcn.004c0350
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x4bf8e1
cmp dword [esp + 0x1c], eax
je 0x4bead4
lea eax, [esp + 0x15]
push eax
push esi
call fcn.004d91b0
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
test edi, edi
je 0x4beaad
mov dword [esi + 0x18], ebx
jmp 0x4bead4
mov eax, dword [esi + 0x34]
or ebx, 0xffffffff
cmp byte [esp + 0x15], 0
je 0x4beac8
cmp eax, 7
je 0x4bead4
mov dword [esi + 0x34], 7
jmp 0x4bead4
cmp eax, 5
je 0x4bead4
mov dword [esi + 0x34], 5
test edi, edi
je case.0x4be840.1
mov byte [esp + 0x12], 1
jmp case.0x4be840.1
lea eax, [esp + 0x13]
push eax
push esi
call fcn.004daea0
mov edi, eax
add esp, 8
mov eax, dword [ebp]
mov dword [esp + 0x18], edi
cmp byte [eax + 0x244], bl
je 0x4beb35
xor edi, edi
or ebx, 0xffffffff
push edi
push edi
push esi
mov dword [esp + 0x24], edi
call fcn.004be160
add esp, 0xc
cmp dword [esi + 0x34], 3
je case.0x4be840.1
push esi
mov dword [esi + 0x34], 3
call fcn.004d7270
jmp 0x4bf705
test edi, edi
jne 0x4beadc
or ebx, 0xffffffff
cmp dword [esi + 0x34], 7
je case.0x4be840.1
mov dword [esi + 0x34], 7
jmp case.0x4be840.1
lea eax, [esp + 0x15]
push eax
push 0
push 0
push esi
call fcn.004ce650
add esp, 0x10
mov edi, eax
mov dword [esp + 0x18], edi
cmp byte [esp + 0x15], bl
je 0x4beb8d
test edi, edi
jne 0x4beb95
or ebx, 0xffffffff
cmp dword [esi + 0x34], 7
je case.0x4be840.1
mov dword [esi + 0x34], 7
jmp case.0x4be840.1
test edi, edi
je case.0x4be840.1
push esi
call fcn.00424050
push 1
push edi
push esi
call fcn.004be160
add esp, 0x10
mov byte [esp + 0x12], 1
jmp case.0x4be840.1
test edi, edi
jne 0x4beb95
mov eax, dword [ebp]
cmp byte [eax + 0x247], bl
je 0x4bebcf
mov dword [esi + 0x34], 9
or ebx, 0xffffffff
jmp case.0x4be840.1
test edi, edi
jne 0x4beb95
mov eax, dword [ebp]
push edi
push eax
mov dword [esp + 0x2c], eax
mov byte [esp + 0x1b], bl
lea ebp, [eax + 0x24e]
call fcn.004ceb90
add esp, 8
test al, al
je 0x4bec0f
cmp byte [ebp], bl
je 0x4bec14
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x260]
cmp dword [eax + 0x18], ebx
jne 0x4bec0b
mov byte [esp + 0x13], 1
xor edi, edi
jmp 0x4bec41
cmp byte [ebp], bl
jne 0x4bec41
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x260]
mov eax, dword [eax + 0x14]
test eax, eax
je 0x4bec38
lea ecx, [esp + 0x13]
push ecx
push esi
call eax
mov edi, eax
add esp, 8
test edi, edi
jne 0x4bec41
jmp 0x4bec3d
mov byte [esp + 0x13], 1
mov byte [ebp], 1
mov ecx, dword [esi + 0x34]
mov dword [esp + 0x18], edi
test edi, edi
jne 0x4beb95
cmp byte [esp + 0x13], bl
jne 0x4becbb
cmp ecx, 8
je 0x4bec62
mov dword [esi + 0x34], 8
or ebx, 0xffffffff
jmp case.0x4be840.1
mov edx, dword [ebp]
test edx, edx
je 0x4beca6
mov eax, dword [edx + 0x260]
cmp dword [eax + 0x18], ebx
je 0x4beca6
mov byte [esp + 0x13], bl
lea ecx, [esp + 0x13]
mov eax, dword [edx + 0x260]
push ecx
push esi
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [esi + 0x34]
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
test edi, edi
je 0x4becb1
jmp 0x4beb95
xor edi, edi
mov byte [esp + 0x13], 1
mov dword [esp + 0x18], edi
cmp byte [esp + 0x13], bl
je case.0x4be840.1
cmp ecx, 9
je 0x4becc7
mov dword [esi + 0x34], 9
or ebx, 0xffffffff
jmp case.0x4be840.1
cmp dword [esi + 0x1b4], ebx
je 0x4bed58
mov eax, dword [esi + 0x7c]
test eax, eax
je 0x4bece9
mov byte [eax + 0x117], 1
push dword [esi + 0xdbc]
lea eax, [esi + 0xd8a]
push dword [esi + 0xdb8]
push eax
lea eax, [esi + 0xd5c]
push eax
push dword [esi + 0x1b8]
mov eax, dword [esi + 0x1b4]
call eax
mov ecx, dword [esi + 0x7c]
add esp, 0x14
test ecx, ecx
je 0x4bed21
mov byte [ecx + 0x117], bl
test eax, eax
je 0x4bed55
push str.operation_aborted_by_pre_request_callback
push esi
call fcn.004cefe0
mov edi, 0x2a
push esi
mov dword [esp + 0x24], edi
call fcn.00424050
push 0
push edi
push esi
call fcn.004be160
add esp, 0x18
mov byte [esp + 0x12], 1
jmp case.0x4be840.1
mov ecx, dword [esi + 0x34]
cmp byte [esi + 0x67d], 1
mov eax, dword [esi + 0x18]
jne 0x4bed8a
push 0
push eax
call fcn.004d1360
add esp, 8
cmp dword [esi + 0x34], 0xf
je 0x4bed7c
mov dword [esi + 0x34], 0xf
xor edi, edi
or ebx, 0xffffffff
mov dword [esp + 0x18], edi
jmp case.0x4be840.1
mov eax, dword [eax + 0x260]
xor edi, edi
mov eax, dword [eax + 8]
test eax, eax
je 0x4beda9
lea ecx, [esp + 0x14]
push ecx
push esi
call eax
mov ecx, dword [esi + 0x34]
add esp, 8
mov edi, eax
mov dword [esp + 0x18], edi
test edi, edi
jne 0x4bee91
cmp byte [esp + 0x14], bl
jne 0x4bee48
cmp byte [esi + 0xcfe], bl
je 0x4bee34
mov eax, dword [esi + 0xd10]
mov al, byte [eax + 0x20]
cmp al, 7
je 0x4bedd8
cmp al, 5
jne 0x4bee34
push 0
push 0
push esi
call fcn.004be160
mov ebx, dword [esi + 0x18]
add esp, 0xc
mov eax, ebx
neg eax
sbb eax, eax
add eax, 0x10
cmp dword [esi + 0x34], eax
je 0x4bee2c
mov dword [esi + 0x34], eax
test ebx, ebx
jne 0x4bee14
mov eax, dword [esi + 0x7c]
dec dword [eax + 0x10]
mov eax, dword [esi + 0x7c]
cmp dword [eax + 0x10], ebx
jne 0x4bee14
push eax
call fcn.004c0240
add esp, 4
xor eax, eax
test ebx, ebx
sete al
mov eax, dword [eax*4 + 0x58ee24]
test eax, eax
je 0x4bee2c
push esi
call eax
add esp, 4
or ebx, 0xffffffff
jmp case.0x4be840.1
cmp ecx, 0xa
je 0x4bee40
mov dword [esi + 0x34], 0xa
or ebx, 0xffffffff
jmp case.0x4be840.1
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x24d], bl
je 0x4bee67
cmp ecx, 0xb
je 0x4bee5f
mov dword [esi + 0x34], 0xb
or ebx, 0xffffffff
jmp case.0x4be840.1
cmp ecx, 0xc
je 0x4bee89
push 7
lea eax, [esp + 0x70]
mov dword [esi + 0x34], 0xc
push esi
push eax
mov byte [esi + 0x138], bl
call fcn.004e0340
add esp, 0xc
or ebx, 0xffffffff
jmp case.0x4be840.1
cmp edi, 0x37
jne 0x4bef48
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x247], bl
je 0x4bef48
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], ebx
push eax
push esi
call fcn.004d7af0
add esp, 8
test eax, eax
je 0x4beeca
mov edi, eax
mov byte [esp + 0x12], 1
mov dword [esp + 0x18], edi
push esi
call fcn.00424050
push 0
push edi
push esi
call fcn.004be160
mov ecx, dword [esp + 0x2c]
add esp, 0x10
test ecx, ecx
je 0x4bef37
test eax, eax
je 0x4beeff
cmp eax, 0x37
je 0x4beeff
mov edi, eax
push ecx
mov dword [esp + 0x1c], edi
call dword [0x5df1b0]
jmp 0x4bf705
push 2
push ecx
push esi
call fcn.004d6d60
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x4bef23
cmp dword [esi + 0x34], 2
je 0x4bef1e
mov dword [esi + 0x34], 2
or ebx, 0xffffffff
xor edi, edi
mov ecx, dword [esp + 0x1c]
push ecx
mov dword [esp + 0x1c], edi
call dword [0x5df1b0]
jmp 0x4bf705
push ecx
mov byte [esp + 0x16], 1
call dword [0x5df1b0]
jmp 0x4bf705
push esi
call fcn.00424050
add esp, 4
cmp dword [esi + 0x18], ebx
je 0x4beba7
push 0
push edi
push esi
call fcn.004be160
add esp, 0xc
mov byte [esp + 0x12], 1
jmp case.0x4be840.1
mov edx, dword [ebp]
test edx, edx
je 0x4befc9
mov eax, dword [edx + 0x260]
cmp dword [eax + 0x1c], ebx
je 0x4befc6
mov byte [esp + 0x14], bl
lea ecx, [esp + 0x14]
mov eax, dword [edx + 0x260]
push ecx
push esi
mov eax, dword [eax + 0x1c]
call eax
mov ecx, dword [esi + 0x34]
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
lea eax, [esi + 0x18]
test edi, edi
je 0x4befd6
push esi
call fcn.00424050
push 0
push edi
push esi
call fcn.004be160
add esp, 0x10
mov byte [esp + 0x12], 1
jmp case.0x4be840.1
lea ebp, [esi + 0x18]
xor edi, edi
mov byte [esp + 0x14], 1
mov dword [esp + 0x18], edi
mov eax, ebp
cmp byte [esp + 0x14], bl
je case.0x4be840.1
mov eax, dword [eax]
mov dl, byte [eax + 0x24d]
xor eax, eax
test dl, dl
sete al
add eax, 0xb
cmp ecx, eax
je 0x4bee2c
mov dword [esi + 0x34], eax
xor eax, eax
test dl, dl
sete al
mov eax, dword [eax*4 + 0x58ee14]
jmp 0x4bee22
mov eax, dword [ebp]
xor edx, edx
mov dword [esp + 0x2c], edx
xor edi, edi
mov eax, dword [eax + 0x260]
mov eax, dword [eax + 0x10]
test eax, eax
je 0x4bf03c
lea ecx, [esp + 0x2c]
push ecx
push esi
call eax
mov ecx, dword [esi + 0x34]
add esp, 8
mov edx, dword [esp + 0x2c]
mov edi, eax
mov dword [esp + 0x18], edi
test edi, edi
jne 0x4befaa
test edx, edx
je case.0x4be840.1
xor eax, eax
cmp edx, 1
sete al
lea eax, [eax*2 + 0xa]
cmp ecx, eax
je 0x4bee2c
mov dword [esi + 0x34], eax
mov eax, dword [eax*4 + 0x58ede8]
jmp 0x4bee22
mov eax, dword [ebp]
cmp byte [eax + 0x256], bl
je 0x4bf09d
mov ebx, dword [esp + 0x80]
mov eax, dword [ebx + 0x24]
test eax, eax
je 0x4bf09d
push dword [eax]
push ebx
call fcn.004be0f0
mov ecx, dword [esi + 0x34]
add esp, 8
mov eax, dword [ebp]
cmp dword [eax + 0x278], 0xffffffff
jne 0x4bf0ed
cmp dword [eax + 0x27c], 0xffffffff
jne 0x4bf0ed
cmp byte [esi + 0xcfe], 0
je 0x4bf0d4
mov eax, dword [eax + 0x260]
test dword [eax + 0x50], 0x1000
jne 0x4bf0d4
mov eax, dword [esi + 0xd10]
mov byte [eax + 0x20], 7
cmp dword [esi + 0x34], 0xf
je 0x4bee2c
mov dword [esi + 0x34], 0xf
or ebx, 0xffffffff
jmp case.0x4be840.1
cmp ecx, 0xd
je 0x4bee2c
mov dword [esi + 0x34], 0xd
or ebx, 0xffffffff
jmp case.0x4be840.1
push esi
call fcn.004e0670
add esp, 4
test eax, eax
je 0x4bf123
mov ecx, 0x2a
mov edi, ecx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x18], edi
jmp 0x4bf14e
mov ecx, dword [esp + 0x84]
sub esp, 0x10
mov eax, esp
movups xmm0, xmmword [ecx]
push esi
movups xmmword [eax], xmm0
call fcn.004e19c0
mov edi, eax
add esp, 0x14
mov dword [esp + 0x18], edi
mov ecx, edi
mov dword [esp + 0x24], ecx
test edi, edi
je 0x4bf187
mov edx, dword [ebp]
mov eax, dword [edx + 0x260]
test byte [eax + 0x50], 2
jne 0x4bf16d
cmp ecx, 0x5c
je 0x4bf16d
push 2
push edx
call fcn.004d1360
add esp, 8
push esi
call fcn.00424050
push 1
push dword [esp + 0x2c]
push esi
call fcn.004be160
add esp, 0x10
jmp case.0x4be840.1
mov edx, dword [esi + 0x208]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x20c]
mov eax, edx
or eax, ecx
movlpd qword [esp + 0x30], xmm0
je 0x4bf1ee
mov ebp, dword [esp + 0x84]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x790]
push ecx
push edx
push dword [esi + 0x7a4]
movups xmmword [eax], xmm0
push dword [esi + 0x7a0]
push dword [esi + 0x6ec]
push dword [esi + 0x6e8]
call fcn.004dff80
add esp, 0x38
mov dword [esp + 0x1c], edx
mov ebp, eax
jmp 0x4bf1fa
mov eax, dword [esp + 0x34]
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x1c], eax
mov eax, dword [esi + 0x210]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x214]
or eax, ecx
movlpd qword [esp + 0x24], xmm0
je 0x4bf260
mov edx, dword [esp + 0x84]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [edx]
mov edx, dword [esi + 0x210]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x7a8]
push ecx
push edx
push dword [esi + 0x7bc]
movups xmmword [eax], xmm0
push dword [esi + 0x7b8]
push dword [esi + 0x6e4]
push dword [esi + 0x6e0]
call fcn.004dff80
add esp, 0x38
mov ecx, eax
jmp 0x4bf268
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
mov eax, ebp
or eax, dword [esp + 0x1c]
jne 0x4bf2a4
mov eax, ecx
or eax, edx
jne 0x4bf2a4
cmp dword [esi + 0x34], 0xd
je 0x4bf283
mov dword [esi + 0x34], 0xd
mov ebp, dword [esp + 0x84]
sub esp, 0x10
mov eax, esp
movups xmm0, xmmword [ebp]
push esi
movups xmmword [eax], xmm0
call fcn.004e09f0
add esp, 0x14
jmp 0x4bf70f
mov eax, dword [esp + 0x1c]
cmp eax, edx
jl 0x4bf2c4
jg 0x4bf2b2
cmp ebp, ecx
jb 0x4bf2c4
push 0xb
push eax
push ebp
push esi
call fcn.004bccb0
add esp, 0x10
jmp case.0x4be840.1
push 0xb
push edx
push ecx
push esi
call fcn.004bccb0
add esp, 0x10
jmp case.0x4be840.1
mov edx, dword [esi + 0x208]
xor al, al
mov ecx, dword [esi + 0x20c]
xorps xmm0, xmm0
mov byte [esp + 0x16], al
mov eax, edx
or eax, ecx
mov dword [esp + 0x1c], ebx
movlpd qword [esp + 0x30], xmm0
je 0x4bf347
mov ebp, dword [esp + 0x84]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x790]
push ecx
push edx
push dword [esi + 0x7a4]
movups xmmword [eax], xmm0
push dword [esi + 0x7a0]
push dword [esi + 0x6ec]
push dword [esi + 0x6e8]
call fcn.004dff80
add esp, 0x38
mov dword [esp + 0x20], edx
mov ebp, eax
jmp 0x4bf353
mov eax, dword [esp + 0x34]
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 0x210]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x214]
or eax, ecx
movlpd qword [esp + 0x24], xmm0
je 0x4bf3bd
mov edx, dword [esp + 0x84]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [edx]
mov edx, dword [esi + 0x210]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x7a8]
push ecx
push edx
push dword [esi + 0x7bc]
movups xmmword [eax], xmm0
push dword [esi + 0x7b8]
push dword [esi + 0x6e4]
push dword [esi + 0x6e0]
call fcn.004dff80
add esp, 0x38
mov dword [esp + 0x24], eax
mov ecx, eax
jmp 0x4bf3c9
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x24], ecx
mov eax, ebp
mov dword [esp + 0x30], edx
or eax, dword [esp + 0x20]
jne 0x4bf5da
mov eax, ecx
or eax, edx
jne 0x4bf5da
push esi
call fcn.004d76e0
add esp, 4
mov edi, eax
mov dword [esp + 0x18], edi
cmp byte [esi + 0x12e], bl
jne 0x4bf456
cmp edi, 0x38
je 0x4bf456
mov ecx, edi
cmp edi, 0x5c
je 0x4bf416
mov al, byte [esp + 0x16]
mov byte [esp + 0x16], al
test ecx, ecx
je 0x4bf49c
mov ecx, dword [esi + 0x18]
mov eax, dword [ecx + 0x260]
test byte [eax + 0x50], 2
jne 0x4bf435
cmp edi, 0x5c
je 0x4bf435
push 2
push ecx
call fcn.004d1360
add esp, 8
push esi
call fcn.00424050
push 1
push edi
push esi
call fcn.004be160
add esp, 0x10
push dword [esp + 0x1c]
call dword [0x5df1b0]
jmp 0x4bf705
lea eax, [esp + 0x1c]
push eax
push esi
call fcn.004d7af0
add esp, 8
mov ecx, edi
test eax, eax
jne 0x4bf477
cmp dword [esp + 0x1c], ebx
setne al
mov byte [esp + 0x16], al
jmp 0x4bf487
test edi, edi
jne 0x4bf483
mov edi, eax
mov dword [esp + 0x18], edi
jmp 0x4bf416
mov al, byte [esp + 0x16]
test al, al
je 0x4bf40a
xor edi, edi
mov byte [esi + 0x12e], 1
mov dword [esp + 0x18], edi
cmp byte [esi + 0x12e], bl
je 0x4bf5b4
push esi
call fcn.004d07f0
add esp, 4
test al, al
jne 0x4bf5b4
push esi
call fcn.00424050
add esp, 4
cmp byte [esp + 0x16], bl
jne 0x4bf56e
cmp dword [esi + 0x120], ebx
jne 0x4bf54a
cmp dword [esi + 0x11c], ebx
je 0x4bf523
push dword [esp + 0x1c]
call dword [0x5df1b0]
mov eax, dword [esi + 0x11c]
push 1
push eax
push esi
mov dword [esp + 0x2c], eax
mov dword [esi + 0x11c], ebx
call fcn.004d6d60
mov edi, eax
add esp, 0x10
mov dword [esp + 0x18], edi
test edi, edi
je 0x4bf52b
push 1
push edi
push esi
mov byte [esp + 0x1e], 1
call fcn.004be160
mov edi, eax
add esp, 0xc
mov dword [esp + 0x18], edi
test edi, edi
jne 0x4bf5cb
cmp dword [esi + 0x34], 0xf
je 0x4bf538
mov dword [esi + 0x34], 0xf
push dword [esp + 0x1c]
or ebx, 0xffffffff
call dword [0x5df1b0]
jmp 0x4bf705
push dword [esp + 0x1c]
call dword [0x5df1b0]
mov eax, dword [esi + 0x120]
add esp, 4
mov dword [esp + 0x1c], eax
mov edi, 3
mov dword [esi + 0x120], ebx
jmp 0x4bf573
mov edi, 2
push 0
push 0
push esi
call fcn.004be160
push edi
push dword [esp + 0x2c]
push esi
call fcn.004d6d60
mov edi, eax
add esp, 0x18
mov dword [esp + 0x18], edi
test edi, edi
jne 0x4bf5cb
cmp dword [esi + 0x34], 2
je 0x4bf5a2
mov dword [esi + 0x34], 2
push dword [esp + 0x1c]
or ebx, 0xffffffff
call dword [0x5df1b0]
jmp 0x4bf705
cmp byte [esi + 0xcf7], bl
je 0x4bf5cb
push 8
push 0
push 0
push esi
call fcn.004bccb0
add esp, 0x10
push dword [esp + 0x1c]
call dword [0x5df1b0]
jmp 0x4bf705
mov ecx, dword [esp + 0x84]
sub esp, 0x10
mov eax, esp
movups xmm0, xmmword [ecx]
push esi
movups xmmword [eax], xmm0
call fcn.004e09f0
add esp, 0x14
cmp dword [esi + 0x34], 0xe
je 0x4bf602
mov dword [esi + 0x34], 0xe
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x30]
cmp eax, edx
jl 0x4bf62a
jg 0x4bf632
mov ecx, dword [esp + 0x24]
cmp ebp, ecx
jb 0x4bf62e
push 0xb
push eax
push ebp
push esi
call fcn.004bccb0
add esp, 0x10
jmp case.0x4be840.1
mov ecx, dword [esp + 0x24]
mov ebp, ecx
mov eax, edx
push 0xb
push eax
push ebp
push esi
call fcn.004bccb0
add esp, 0x10
jmp case.0x4be840.1
mov eax, dword [ebp]
or ebx, 0xffffffff
test eax, eax
je 0x4bf685
cmp byte [eax + 0x256], 0
je 0x4bf670
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 0x24]
test ecx, ecx
je 0x4bf670
push dword [ecx]
push eax
call fcn.004be0f0
add esp, 8
push 0
push edi
push esi
call fcn.004be160
add esp, 0xc
test edi, edi
cmove edi, eax
mov dword [esp + 0x18], edi
cmp byte [esi + 0xcfe], 0
je 0x4bf6b0
mov eax, dword [esi + 0xd10]
cmp byte [eax + 0x20], 7
je 0x4bf6b0
cmp dword [esi + 0x34], 0
mov ebp, dword [esp + 0x84]
je 0x4bf70f
mov dword [esi + 0x34], 0
jmp 0x4bf70f
cmp dword [esi + 0x34], 0x10
je case.0x4be840.1
mov eax, dword [esi + 0x7c]
mov dword [esi + 0x34], 0x10
dec dword [eax + 0x10]
mov eax, dword [esi + 0x7c]
cmp dword [eax + 0x10], 0
jne 0x4bf6d5
push eax
call fcn.004c0240
add esp, 4
mov ebp, dword [esi + 0x18]
test ebp, ebp
je 0x4bf6f8
push esi
push ebp
call fcn.004ce7d0
push 0
lea eax, [esi + 0x28]
push eax
lea eax, [ebp + 0x2b4]
push eax
call fcn.004d8340
add esp, 0x14
push esi
mov dword [esi + 0x18], 0
call fcn.004bcec0
add esp, 4
mov ebp, dword [esp + 0x84]
mov eax, dword [esi + 0x34]
sub eax, 3
cmp eax, 5
ja 0x4bf749
mov ecx, dword [esp + 0x80]
cmp ebx, 0xffffffff
je 0x4bf750
cmp byte [ecx + 0x116], 0
jne 0x4bf750
push 0
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x1a]
push eax
push ebp
push esi
call fcn.004be590
mov edi, dword [esp + 0x2c]
add esp, 0x14
mov ecx, dword [esp + 0x80]
mov eax, dword [esi + 0x34]
cmp eax, 0x10
jge 0x4bf8bb
test edi, edi
je 0x4bf844
mov edx, dword [ecx + 0x24]
test edx, edx
je 0x4bf779
push dword [edx]
push ecx
call fcn.004be0f0
mov eax, dword [esi + 0x34]
add esp, 8
mov ebp, dword [esi + 0x18]
lea ebx, [esi + 0x18]
test ebp, ebp
je 0x4bf7d9
cmp byte [esp + 0x12], 0
mov dword [esp + 0x30], ebx
je 0x4bf7d3
cmp edi, 0x1c
push esi
push ebp
sete byte [esp + 0x40]
call fcn.004ce7d0
push 0
lea eax, [esi + 0x28]
push eax
lea eax, [ebp + 0x2b4]
push eax
call fcn.004d8340
push 1
push ebp
push esi
mov dword [ebx], 0
call fcn.004c66f0
push dword [esp + 0x58]
push ebp
push esi
call fcn.004c9f10
lea eax, [esi + 0x18]
add esp, 0x2c
mov dword [esp + 0x30], eax
mov ebp, dword [esp + 0x30]
jmp 0x4bf7e9
mov ebp, ebx
cmp eax, 3
jne 0x4bf7e9
push esi
call fcn.00424050
add esp, 4
cmp dword [esi + 0x34], 0x10
je 0x4bf8b8
mov eax, dword [esi + 0x7c]
mov dword [esi + 0x34], 0x10
dec dword [eax + 0x10]
mov eax, dword [esi + 0x7c]
cmp dword [eax + 0x10], 0
jne 0x4bf814
push eax
call fcn.004c0240
add esp, 4
mov ebx, ebp
mov ebp, dword [ebx]
test ebp, ebp
je 0x4bf836
push esi
push ebp
call fcn.004ce7d0
push 0
lea eax, [esi + 0x28]
push eax
lea eax, [ebp + 0x2b4]
push eax
call fcn.004d8340
add esp, 0x14
push esi
mov dword [ebx], 0
call fcn.004bcec0
jmp 0x4bf8b5
cmp dword [esi + 0x18], 0
je 0x4bf8bb
push esi
call fcn.004e0670
add esp, 4
test eax, eax
je 0x4bf8bb
push 2
push dword [esi + 0x18]
mov edi, 0x2a
mov dword [esp + 0x20], edi
call fcn.004d1360
mov ebx, dword [esi + 0x34]
xor eax, eax
add esp, 8
cmp ebx, 0xf
setge al
add eax, 0xf
cmp ebx, eax
je 0x4bf8b8
mov dword [esi + 0x34], eax
cmp ebx, 0xf
jl 0x4bf89f
mov eax, dword [esi + 0x7c]
dec dword [eax + 0x10]
mov eax, dword [esi + 0x7c]
cmp dword [eax + 0x10], 0
jne 0x4bf89f
push eax
call fcn.004c0240
add esp, 4
xor eax, eax
cmp ebx, 0xf
setge al
mov eax, dword [eax*4 + 0x58ee24]
test eax, eax
je 0x4bf8b8
push esi
call eax
add esp, 4
or ebx, 0xffffffff
cmp dword [esi + 0x34], 0x10
je 0x4bf8eb
mov ecx, dword [esp + 0x80]
cmp ebx, 0xffffffff
je 0x4be7c0
cmp byte [ecx + 0x116], 0
jne 0x4be7c0
mov dword [esi + 0x38], edi
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret
mov eax, dword [esi + 0x658]
test eax, eax
je 0x4bf905
push edi
push esi
call eax
mov ebx, dword [esp + 0x88]
add esp, 8
jmp 0x4bf92a
mov ebx, dword [esp + 0x80]
lea eax, [esi + 0x3c]
push eax
push eax
mov dword [eax + 0xc], 1
mov dword [eax + 0x10], esi
mov dword [eax + 0x14], edi
lea eax, [ebx + 0x14]
push eax
call fcn.004d8180
add esp, 0xc
cmp dword [esi + 0x34], 0x11
je 0x4bf937
mov dword [esi + 0x34], 0x11
lea eax, [esi + 0x1c]
push eax
lea eax, [ebx + 0x34]
push esi
push eax
call fcn.004d8180
push esi
push ebx
call fcn.004c0740
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret
mov eax, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret
pop edi
pop esi
pop ebp
mov eax, 2
pop ebx
add esp, 0x6c
ret