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

Disassembly:
sub esp, 0x60
push ebx
push ebp
push esi
mov esi, dword [esp + 0x78]
push edi
xor edi, edi
mov byte [esp + 0x13], 0
mov byte [esp + 0x14], 0
mov byte [esp + 0x15], 0
mov dword [esp + 0x18], edi
test esi, esi
je 0x1025e67d
cmp dword [esi], 0xc0dedbad
jne 0x1025e67d
mov ebp, dword [esp + 0x74]
mov ebx, fcn.1025c090
cmp byte [ebp + 0x108], 0
je 0x1025d7f1
mov edi, 0x2a
push esi
mov dword [esp + 0x1c], edi
call fcn.10006d40
push 0
push edi
push esi
call fcn.1025d230
add esp, 0x10
cmp dword [esi + 0x34], 0xf
je 0x1025d7f1
mov eax, dword [esi + 0x7c]
mov dword [esi + 0x34], 0xf
dec dword [eax + 0x10]
test ebx, ebx
je 0x1025d7f1
push esi
call fcn.1025c090
add esp, 4
mov al, byte [ebp + 0x106]
xor ebx, ebx
mov byte [esp + 0x11], 0
mov byte [ebp + 0x106], bl
test al, al
je 0x1025d811
push ebp
call fcn.1025ee80
add esp, 4
mov eax, dword [esi + 0x34]
cmp eax, 2
jle 0x1025d827
cmp eax, 0xf
jge 0x1025d827
cmp dword [esi + 0x18], ebx
je case.default.0x1025d86a
cmp dword [esi + 0x18], ebx
je 0x1025d85e
cmp eax, 2
jl 0x1025d85e
cmp eax, 0xf
jge 0x1025d85e
push 0
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x19]
push eax
push dword [esp + 0x84]
push esi
call fcn.1025d610
mov edi, dword [esp + 0x2c]
add esp, 0x14
test al, al
jne 0x1025e4cc
mov eax, dword [esi + 0x34]
cmp eax, 0x10
ja case.default.0x1025d86a
jmp dword [eax*4 + 0x1025e68c]
push esi
call fcn.1026ab80
mov edi, eax
add esp, 4
mov dword [esp + 0x18], edi
test edi, edi
jne case.0x1025d86a.1
cmp dword [esi + 0x34], 2
je 0x1025d8a7
mov eax, fcn.1026aaf0
mov dword [esi + 0x34], 2
test eax, eax
je 0x1025d8a7
push esi
call fcn.1026aaf0
add esp, 4
push 1
lea eax, [esp + 0x44]
push esi
push eax
call fcn.10272bc0
mov ecx, dword [esp + 0x84]
add esp, 0xc
or ebx, 0xffffffff
movups xmm0, xmmword [eax]
movups xmmword [ecx], xmm0
jmp 0x1025e490
push esi
call fcn.1025c5e0
mov edi, eax
add esp, 4
mov dword [esp + 0x18], edi
test edi, edi
jne case.0x1025d86a.1
push 2
lea eax, [esp + 0x54]
push esi
push eax
call fcn.10272bc0
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [esp + 0x78]
movups xmmword [eax], xmm0
mov eax, dword [esi + 0x1c8]
test eax, eax
je 0x1025d914
push 0xa
push edi
push eax
push esi
call fcn.1025c160
add esp, 0x10
mov eax, dword [esi + 0x1cc]
test eax, eax
je 0x1025d92c
push 2
push 0
push eax
push esi
call fcn.1025c160
add esp, 0x10
lea eax, [esp + 0x12]
push eax
lea eax, [esp + 0x1b]
push eax
push esi
call fcn.10263a00
mov edi, eax
add esp, 0xc
mov dword [esp + 0x18], edi
cmp edi, 0x59
jne 0x1025d97d
cmp dword [esi + 0x34], 1
je 0x1025d957
mov dword [esi + 0x34], 1
lea eax, [esi + 0x1c]
push eax
push esi
push dword [ebp + 0x28]
lea eax, [ebp + 0x24]
push eax
call fcn.1026d410
push esi
push ebp
call fcn.1025f560
add esp, 0x18
xor edi, edi
mov dword [esp + 0x18], edi
jmp case.0x1025d86a.1
cmp byte [esi + 0xc2c], bl
je 0x1025d990
push dword [esi + 0x7c]
call fcn.1025ee80
add esp, 4
test edi, edi
jne case.0x1025d86a.1
push 3
lea eax, [esp + 0x64]
push esi
push eax
call fcn.10272bc0
mov ecx, dword [esp + 0x84]
add esp, 0xc
movups xmm0, xmmword [eax]
movups xmmword [ecx], xmm0
cmp byte [esp + 0x17], bl
je 0x1025d9d1
cmp dword [esi + 0x34], 3
je 0x1025e490
mov dword [esi + 0x34], 3
jmp 0x1025e490
or ebx, 0xffffffff
cmp byte [esp + 0x12], 0
je 0x1025dabd
cmp dword [esi + 0x34], 6
je 0x1025e490
mov dword [esi + 0x34], 6
jmp 0x1025e490
mov eax, dword [esi + 0x18]
mov dword [esp + 0x1c], ebx
cmp byte [eax + 0x12b], bl
je 0x1025da09
mov ebx, dword [eax + 0x48]
jmp 0x1025da0c
mov ebx, dword [eax + 0x30]
push dword [eax + 0x198]
push ebx
push esi
call fcn.1026dac0
add esp, 0xc
mov dword [esp + 0x1c], eax
test eax, eax
je 0x1025da4c
push ebx
push 0x102a2684
xor edi, edi
mov dword [esi + 0x874], eax
push esi
mov byte [esi + 0x888], 1
mov dword [esp + 0x24], edi
call fcn.100069e0
add esp, 0xc
cmp dword [esp + 0x1c], edi
jne 0x1025da60
lea eax, [esp + 0x1c]
push eax
push esi
call fcn.1026e450
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
push esi
push ebp
call fcn.1025f210
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x1025e600
cmp dword [esp + 0x1c], eax
je 0x1025da95
lea eax, [esp + 0x12]
push eax
push esi
call fcn.1026e0d0
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
test edi, edi
je 0x1025daab
mov dword [esi + 0x18], ebx
mov ecx, dword [esp + 0x78]
test edi, edi
je 0x1025e490
mov byte [esp + 0x11], 1
jmp 0x1025e490
mov ecx, dword [esp + 0x78]
or ebx, 0xffffffff
cmp byte [esp + 0x12], 0
jne 0x1025d9df
cmp dword [esi + 0x34], 4
je 0x1025e490
mov dword [esi + 0x34], 4
jmp 0x1025e490
lea eax, [esp + 0x13]
push eax
push esi
call fcn.1026f480
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
test edi, edi
jne 0x1025db3f
mov ecx, dword [esp + 0x78]
or ebx, 0xffffffff
jmp 0x1025d9df
lea eax, [esp + 0x12]
push eax
push 0
push 0
push esi
call fcn.10266ec0
add esp, 0x10
mov edi, eax
mov dword [esp + 0x18], edi
cmp byte [esp + 0x12], bl
je 0x1025db25
test edi, edi
jne 0x1025db2d
mov ecx, dword [esp + 0x78]
or ebx, 0xffffffff
jmp 0x1025d9df
test edi, edi
je case.0x1025d86a.1
push esi
call fcn.10006d40
push 1
push edi
push esi
call fcn.1025d230
add esp, 0x10
mov byte [esp + 0x11], 1
jmp case.0x1025d86a.1
cmp byte [esi + 0xc31], bl
je 0x1025db60
push esi
call fcn.1025f040
mov edi, eax
add esp, 4
mov dword [esp + 0x18], edi
test edi, edi
jne 0x1025db2d
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x129], bl
je 0x1025db84
cmp dword [esi + 0x34], 8
je 0x1025db7c
mov dword [esi + 0x34], 8
or ebx, 0xffffffff
jmp case.0x1025d86a.1
lea eax, [esp + 0x13]
push eax
push esi
call fcn.1025ef00
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
test edi, edi
jne 0x1025db2d
cmp byte [esp + 0x13], bl
jne 0x1025db6f
cmp dword [esi + 0x34], 7
je 0x1025dbaf
mov dword [esi + 0x34], 7
or ebx, 0xffffffff
jmp case.0x1025d86a.1
lea eax, [esp + 0x13]
push eax
push esi
call fcn.1025ef80
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
test edi, edi
jne 0x1025db2d
cmp byte [esp + 0x13], bl
je case.0x1025d86a.1
cmp dword [esi + 0x34], 8
je 0x1025db7c
mov dword [esi + 0x34], 8
or ebx, 0xffffffff
jmp case.0x1025d86a.1
cmp dword [esi + 0x1b4], ebx
je 0x1025dc6b
push 1
push esi
call fcn.1025c620
push dword [esi + 0xce4]
lea eax, [esi + 0xcb4]
push dword [esi + 0xcac]
push eax
lea eax, [esi + 0xc7c]
push eax
push dword [esi + 0x1b8]
mov eax, dword [esi + 0x1b4]
call eax
push 0
push esi
mov edi, eax
call fcn.1025c620
add esp, 0x24
test edi, edi
je 0x1025dc6b
push str.operation_aborted_by_pre_request_callback
push esi
call fcn.10267790
mov edi, 0x2a
push esi
mov dword [esp + 0x24], edi
call fcn.10006d40
push 0
push edi
push esi
call fcn.1025d230
add esp, 0x18
mov byte [esp + 0x11], 1
jmp case.0x1025d86a.1
cmp byte [esi + 0x5cd], 1
jne 0x1025dc9c
push 0
push dword [esi + 0x18]
call fcn.102688e0
add esp, 8
cmp dword [esi + 0x34], 0xe
je 0x1025dc8e
mov dword [esi + 0x34], 0xe
xor edi, edi
or ebx, 0xffffffff
mov dword [esp + 0x18], edi
jmp case.0x1025d86a.1
mov eax, dword [esi + 0x18]
xor edi, edi
mov eax, dword [eax + 0x13c]
mov eax, dword [eax + 8]
test eax, eax
je 0x1025dcbb
lea ecx, [esp + 0x14]
push ecx
push esi
call eax
add esp, 8
mov edi, eax
mov dword [esp + 0x18], edi
test edi, edi
jne 0x1025dd25
cmp byte [esp + 0x14], bl
jne 0x1025dcde
cmp dword [esi + 0x34], 9
je 0x1025dd1d
mov dword [esi + 0x34], 9
or ebx, 0xffffffff
jmp case.0x1025d86a.1
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x12f], bl
je 0x1025dcfe
cmp dword [esi + 0x34], 0xa
je 0x1025dd1d
mov dword [esi + 0x34], 0xa
or ebx, 0xffffffff
jmp case.0x1025d86a.1
cmp dword [esi + 0x34], 0xb
je 0x1025dd1d
mov eax, fcn.1025c070
mov dword [esi + 0x34], 0xb
test eax, eax
je 0x1025dd1d
push esi
call fcn.1025c070
add esp, 4
or ebx, 0xffffffff
jmp case.0x1025d86a.1
cmp edi, 0x37
jne 0x1025ddee
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x129], bl
je 0x1025ddee
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], ebx
push eax
push esi
call fcn.1026b210
add esp, 8
test eax, eax
je 0x1025dd5e
mov edi, eax
mov byte [esp + 0x11], 1
mov dword [esp + 0x18], edi
push esi
call fcn.10006d40
push 0
push edi
push esi
call fcn.1025d230
mov ecx, dword [esp + 0x2c]
add esp, 0x10
test ecx, ecx
je 0x1025dddd
test eax, eax
je 0x1025dd93
cmp eax, 0x37
je 0x1025dd93
mov edi, eax
push ecx
mov dword [esp + 0x1c], edi
call dword [0x102b8004]
jmp 0x1025e489
push 2
push ecx
push esi
call fcn.1026a600
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x1025ddc9
cmp dword [esi + 0x34], 2
je 0x1025ddc4
mov eax, fcn.1026aaf0
mov dword [esi + 0x34], 2
test eax, eax
je 0x1025ddc4
push esi
call fcn.1026aaf0
add esp, 4
or ebx, 0xffffffff
xor edi, edi
mov ecx, dword [esp + 0x1c]
push ecx
mov dword [esp + 0x1c], edi
call dword [0x102b8004]
jmp 0x1025e489
push ecx
mov byte [esp + 0x15], 1
call dword [0x102b8004]
jmp 0x1025e489
push esi
call fcn.10006d40
add esp, 4
cmp dword [esi + 0x18], ebx
je 0x1025de08
push 0
push edi
push esi
call fcn.1025d230
add esp, 0xc
mov byte [esp + 0x11], 1
jmp case.0x1025d86a.1
lea eax, [esp + 0x14]
push eax
push esi
call fcn.1025efc0
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
test edi, edi
jne 0x1025de57
cmp byte [esp + 0x14], bl
je case.0x1025d86a.1
mov eax, dword [esi + 0x18]
xor ecx, ecx
cmp byte [eax + 0x12f], cl
sete cl
add ecx, 0xa
push ecx
push esi
call fcn.1025d170
add esp, 8
or ebx, 0xffffffff
jmp case.0x1025d86a.1
push esi
call fcn.10006d40
push 0
push edi
push esi
call fcn.1025d230
add esp, 0x10
mov byte [esp + 0x11], 1
jmp case.0x1025d86a.1
mov eax, dword [esi + 0x18]
xor ecx, ecx
mov dword [esp + 0x30], ecx
xor edi, edi
mov eax, dword [eax + 0x13c]
mov eax, dword [eax + 0x10]
test eax, eax
je 0x1025de9c
lea ecx, [esp + 0x30]
push ecx
push esi
call eax
mov ecx, dword [esp + 0x38]
add esp, 8
mov edi, eax
mov dword [esp + 0x18], edi
test edi, edi
jne 0x1025de57
test ecx, ecx
je case.0x1025d86a.1
xor eax, eax
cmp ecx, 1
sete al
lea eax, [eax*2 + 9]
push eax
push esi
call fcn.1025d170
add esp, 8
or ebx, 0xffffffff
jmp case.0x1025d86a.1
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x134], bl
je 0x1025dee1
push ebp
call fcn.1025ee80
add esp, 4
mov eax, dword [esi + 0x18]
cmp dword [eax + 0x158], 0xffffffff
jne 0x1025df0b
cmp dword [eax + 0x15c], 0xffffffff
jne 0x1025df0b
cmp dword [esi + 0x34], 0xe
je 0x1025df18
mov dword [esi + 0x34], 0xe
or ebx, 0xffffffff
jmp case.0x1025d86a.1
cmp dword [esi + 0x34], 0xc
je 0x1025df18
mov dword [esi + 0x34], 0xc
or ebx, 0xffffffff
jmp case.0x1025d86a.1
push esi
call fcn.10272d90
add esp, 4
test eax, eax
je 0x1025df38
mov edi, 0x2a
mov dword [esp + 0x18], edi
jmp 0x1025df5a
mov ecx, dword [esp + 0x78]
sub esp, 0x10
mov eax, esp
movups xmm0, xmmword [ecx]
push esi
movups xmmword [eax], xmm0
call fcn.102737e0
mov edi, eax
add esp, 0x14
mov dword [esp + 0x18], edi
test edi, edi
je 0x1025df90
mov ecx, dword [esi + 0x18]
mov eax, dword [ecx + 0x13c]
test byte [eax + 0x4c], 2
jne 0x1025df79
cmp edi, 0x5c
je 0x1025df79
push 2
push ecx
call fcn.102688e0
add esp, 8
push esi
call fcn.10006d40
push 1
push edi
push esi
call fcn.1025d230
add esp, 0x10
jmp case.0x1025d86a.1
mov edx, dword [esi + 0x1f0]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x1f4]
mov eax, edx
or eax, ecx
movlpd qword [esp + 0x34], xmm0
je 0x1025dff9
mov ebp, dword [esp + 0x78]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x6c0]
push ecx
push edx
push dword [esi + 0x6d4]
movups xmmword [eax], xmm0
push dword [esi + 0x6d0]
push dword [esi + 0x61c]
push dword [esi + 0x618]
call fcn.10272900
mov ebp, dword [esp + 0xac]
add esp, 0x38
mov dword [esp + 0x20], edx
jmp 0x1025e005
mov eax, dword [esp + 0x38]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x34]
mov edx, dword [esi + 0x1f8]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x1fc]
mov dword [esp + 0x1c], eax
mov eax, edx
or eax, ecx
movlpd qword [esp + 0x28], xmm0
je 0x1025e070
mov ebp, dword [esp + 0x78]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x6d8]
push ecx
push edx
push dword [esi + 0x6ec]
movups xmmword [eax], xmm0
push dword [esi + 0x6e8]
push dword [esi + 0x614]
push dword [esi + 0x610]
call fcn.10272900
mov ebp, dword [esp + 0xac]
add esp, 0x38
mov ecx, eax
jmp 0x1025e078
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x1c]
or eax, dword [esp + 0x20]
jne 0x1025e0b2
mov eax, ecx
or eax, edx
jne 0x1025e0b2
cmp dword [esi + 0x34], 0xc
je 0x1025e095
mov dword [esi + 0x34], 0xc
mov ecx, dword [esp + 0x78]
sub esp, 0x10
mov eax, esp
movups xmm0, xmmword [ecx]
push esi
movups xmmword [eax], xmm0
call fcn.10272f10
add esp, 0x14
jmp case.0x1025d86a.1
cmp dword [esp + 0x20], edx
jl 0x1025e0d7
mov eax, dword [esp + 0x1c]
jg 0x1025e0c2
cmp eax, ecx
jb 0x1025e0d7
push 0xb
push dword [esp + 0x24]
push eax
push esi
call fcn.1025c160
add esp, 0x10
jmp case.0x1025d86a.1
push 0xb
push edx
push ecx
push esi
call fcn.1025c160
add esp, 0x10
jmp case.0x1025d86a.1
mov edx, dword [esi + 0x1f0]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x1f4]
mov eax, edx
or eax, ecx
mov dword [esp + 0x1c], ebx
mov byte [esp + 0x16], bl
movlpd qword [esp + 0x34], xmm0
je 0x1025e15a
mov ebp, dword [esp + 0x78]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x6c0]
push ecx
push edx
push dword [esi + 0x6d4]
movups xmmword [eax], xmm0
push dword [esi + 0x6d0]
push dword [esi + 0x61c]
push dword [esi + 0x618]
call fcn.10272900
mov ebp, dword [esp + 0xac]
add esp, 0x38
mov dword [esp + 0x24], edx
jmp 0x1025e166
mov eax, dword [esp + 0x38]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x34]
mov edx, dword [esi + 0x1f8]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x1fc]
mov dword [esp + 0x20], eax
mov eax, edx
or eax, ecx
movlpd qword [esp + 0x28], xmm0
je 0x1025e1d5
mov ebp, dword [esp + 0x78]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x6d8]
push ecx
push edx
push dword [esi + 0x6ec]
movups xmmword [eax], xmm0
push dword [esi + 0x6e8]
push dword [esi + 0x614]
push dword [esi + 0x610]
call fcn.10272900
mov ebp, dword [esp + 0xac]
add esp, 0x38
mov ecx, eax
mov dword [esp + 0x28], eax
jmp 0x1025e1e1
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x28], ecx
mov eax, dword [esp + 0x20]
or eax, dword [esp + 0x24]
mov dword [esp + 0x34], edx
jne 0x1025e3d4
mov eax, ecx
or eax, edx
jne 0x1025e3d4
lea eax, [esp + 0x15]
push eax
push esi
call fcn.1026ae90
add esp, 8
mov edi, eax
mov dword [esp + 0x18], edi
cmp byte [esp + 0x15], bl
jne 0x1025e257
cmp edi, 0x38
je 0x1025e257
cmp edi, 0x5c
jne 0x1025e28f
mov ecx, dword [esi + 0x18]
mov eax, dword [ecx + 0x13c]
test byte [eax + 0x4c], 2
jne 0x1025e240
cmp edi, 0x5c
je 0x1025e240
push 2
push ecx
call fcn.102688e0
add esp, 8
push esi
call fcn.10006d40
push 1
push edi
push esi
call fcn.1025d230
add esp, 0x10
jmp case.0x1025d86a.1
lea eax, [esp + 0x1c]
push eax
push esi
call fcn.1026b210
add esp, 8
test eax, eax
jne 0x1025e285
cmp dword [esp + 0x1c], ebx
setne al
mov byte [esp + 0x16], al
test al, al
je 0x1025e28f
xor edi, edi
mov byte [esp + 0x15], 1
mov dword [esp + 0x18], edi
jmp 0x1025e29d
test edi, edi
jne 0x1025e221
mov edi, eax
mov dword [esp + 0x18], edi
test edi, edi
jne 0x1025e221
cmp byte [esp + 0x15], bl
je 0x1025e3b4
push esi
call fcn.10006d40
add esp, 4
cmp dword [esi + 0x110], ebx
jne 0x1025e332
cmp byte [esp + 0x16], bl
jne 0x1025e35c
cmp dword [esi + 0x10c], ebx
je 0x1025e31d
push dword [esp + 0x1c]
call dword [0x102b8004]
mov eax, dword [esi + 0x10c]
push 1
push eax
push esi
mov dword [esp + 0x2c], eax
mov dword [esi + 0x10c], ebx
call fcn.1026a600
push dword [esp + 0x2c]
mov edi, eax
mov dword [esp + 0x2c], edi
call dword [0x102b8004]
add esp, 0x14
test edi, edi
je 0x1025e31d
push 1
push edi
push esi
mov byte [esp + 0x1d], 1
call fcn.1025d230
mov edi, eax
add esp, 0xc
mov dword [esp + 0x18], edi
test edi, edi
jne case.0x1025d86a.1
cmp dword [esi + 0x34], 0xe
je 0x1025e32a
mov dword [esi + 0x34], 0xe
or ebx, 0xffffffff
jmp case.0x1025d86a.1
cmp byte [esp + 0x16], bl
jne 0x1025e35c
push dword [esp + 0x1c]
call dword [0x102b8004]
mov eax, dword [esi + 0x110]
add esp, 4
mov dword [esp + 0x1c], eax
mov edi, 3
mov dword [esi + 0x110], ebx
jmp 0x1025e361
mov edi, 2
push 0
push 0
push esi
call fcn.1025d230
push edi
push dword [esp + 0x2c]
push esi
call fcn.1026a600
mov edi, eax
add esp, 0x18
mov dword [esp + 0x18], edi
test edi, edi
jne 0x1025e3a5
cmp dword [esi + 0x34], 2
je 0x1025e3a2
mov eax, fcn.1026aaf0
mov dword [esi + 0x34], 2
test eax, eax
je 0x1025e3a2
push esi
call fcn.1026aaf0
add esp, 4
or ebx, 0xffffffff
push dword [esp + 0x1c]
call dword [0x102b8004]
jmp 0x1025e489
cmp byte [esi + 0xc1f], bl
je case.0x1025d86a.1
push 8
push 0
push 0
push esi
call fcn.1025c160
add esp, 0x10
jmp case.0x1025d86a.1
mov ecx, dword [esp + 0x78]
sub esp, 0x10
mov eax, esp
movups xmm0, xmmword [ecx]
push esi
movups xmmword [eax], xmm0
call fcn.10272f10
add esp, 0x14
cmp dword [esi + 0x34], 0xd
je 0x1025e3f9
mov dword [esi + 0x34], 0xd
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x24]
cmp edx, ecx
jl 0x1025e423
jg 0x1025e411
mov eax, dword [esp + 0x28]
cmp dword [esp + 0x20], eax
jb 0x1025e427
push 0xb
push edx
push dword [esp + 0x28]
push esi
call fcn.1025c160
add esp, 0x10
jmp case.0x1025d86a.1
mov eax, dword [esp + 0x28]
push 0xb
push ecx
push eax
push esi
call fcn.1025c160
add esp, 0x10
jmp case.0x1025d86a.1
mov eax, dword [esi + 0x18]
or ebx, 0xffffffff
test eax, eax
je 0x1025e467
cmp byte [eax + 0x134], 0
je 0x1025e452
push ebp
call fcn.1025ee80
add esp, 4
push 0
push edi
push esi
call fcn.1025d230
add esp, 0xc
test edi, edi
cmove edi, eax
mov dword [esp + 0x18], edi
cmp dword [esi + 0x34], 0xf
je case.0x1025d86a.1
mov eax, dword [esi + 0x7c]
mov dword [esi + 0x34], 0xf
dec dword [eax + 0x10]
mov eax, fcn.1025c090
test eax, eax
je case.0x1025d86a.1
push esi
call fcn.1025c090
add esp, 4
mov ecx, dword [esp + 0x78]
cmp dword [esi + 0x18], 0
je 0x1025e4cc
mov eax, dword [esi + 0x34]
cmp eax, 2
jl 0x1025e4cc
cmp eax, 8
jge 0x1025e4cc
cmp ebx, 0xffffffff
je 0x1025e4cc
mov al, byte [ebp + 0x106]
test al, al
jne 0x1025e4cc
push 1
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x19]
push eax
push ecx
push esi
call fcn.1025d610
mov edi, dword [esp + 0x2c]
add esp, 0x14
cmp dword [esi + 0x34], 0xf
jge 0x1025e5e4
test edi, edi
je 0x1025e56d
push ebp
call fcn.1025ee80
mov ebx, dword [esi + 0x18]
add esp, 4
test ebx, ebx
je 0x1025e536
cmp byte [esp + 0x11], 0
je 0x1025e545
cmp edi, 0x1c
push esi
push ebx
sete byte [esp + 0x44]
call fcn.10266ff0
push 0
lea eax, [esi + 0x28]
push eax
lea eax, [ebx + 0x160]
push eax
call fcn.1026d480
push 1
push ebx
push esi
mov dword [esi + 0x18], 0
call fcn.10260ca0
push dword [esp + 0x5c]
push ebx
push esi
call fcn.10263b00
add esp, 0x2c
jmp 0x1025e545
cmp dword [esi + 0x34], 2
jne 0x1025e545
push esi
call fcn.10006d40
add esp, 4
cmp dword [esi + 0x34], 0xf
je 0x1025e5dd
mov eax, dword [esi + 0x7c]
mov dword [esi + 0x34], 0xf
dec dword [eax + 0x10]
mov eax, fcn.1025c090
test eax, eax
je 0x1025e5dd
push esi
call fcn.1025c090
jmp 0x1025e5da
cmp dword [esi + 0x18], 0
je 0x1025e5e0
push esi
call fcn.10272d90
add esp, 4
test eax, eax
je 0x1025e5e0
push 2
push dword [esi + 0x18]
mov edi, 0x2a
mov dword [esp + 0x20], edi
call fcn.102688e0
mov ecx, dword [esi + 0x34]
xor eax, eax
add esp, 8
cmp ecx, 0xe
setge al
add eax, 0xe
cmp ecx, eax
je 0x1025e5dd
mov dword [esi + 0x34], eax
cmp ecx, 0xe
jl 0x1025e5b6
mov eax, dword [esi + 0x7c]
dec dword [eax + 0x10]
xor eax, eax
cmp ecx, 0xe
setge al
cmp dword [eax*4 + 0x102a2478], 0
je 0x1025e5dd
xor eax, eax
cmp ecx, 0xe
push esi
setge al
mov eax, dword [eax*4 + 0x102a2478]
call eax
add esp, 4
or ebx, 0xffffffff
cmp dword [esi + 0x34], 0xf
je 0x1025e617
cmp ebx, 0xffffffff
je 0x1025d7f1
mov al, byte [ebp + 0x106]
test al, al
jne 0x1025d7f1
mov dword [esi + 0x38], edi
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret
mov eax, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret
mov eax, dword [esi + 0x5b4]
test eax, eax
je 0x1025e62a
push edi
push esi
call eax
add esp, 8
jmp 0x1025e64b
lea eax, [esi + 0x3c]
mov dword [eax + 0xc], 1
push eax
push eax
mov dword [eax + 0x10], esi
mov dword [eax + 0x14], edi
lea eax, [ebp + 0x14]
push dword [ebp + 0x18]
push eax
call fcn.1026d410
add esp, 0x10
cmp dword [esi + 0x34], 0x10
je 0x1025e658
mov dword [esi + 0x34], 0x10
lea eax, [esi + 0x1c]
push eax
push esi
push dword [ebp + 0x38]
lea eax, [ebp + 0x34]
push eax
call fcn.1026d410
push esi
push ebp
call fcn.1025f560
add esp, 0x18
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret
pop edi
pop esi
pop ebp
mov eax, 2
pop ebx
add esp, 0x60
ret