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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x2a0
mov esi, esp
mov dword [esi + 0x288], ebp
mov dword [esi + 0x28c], esp
mov dword [esi + 0x298], 0xffffffff
mov dword [esi + 0x294], 0x4431f0
lea eax, [esi + 0x290]
mov ecx, dword fs:[0]
mov dword [esi + 0x290], ecx
mov dword fs:[0], eax
mov eax, dword [0x69b710]
mov eax, dword [eax]
test eax, eax
je 0x435ba0
lea eax, [esi + 0x40]
mov dword [esi + 0x40], 2
mov dword [esi + 0x50], 0
mov dword [esi + 0x28], eax
mov ebx, dword [ebp + 0xc]
mov eax, 0x604a74
movd xmm0, eax
pshufd xmm0, xmm0, 0x11
movdqa xmmword [esi + 0x270], xmm0
lea edx, [ebx + 0x74]
lea ecx, [ebx + 0xa8]
lea eax, [ebx + 0x70]
mov dword [esi + 0x30], edx
mov dword [esi + 0x2c], ecx
lea edx, [ebx + 0x80]
lea ecx, [ebx + 0x88]
mov dword [esi], eax
mov dword [esi + 0x64], edx
mov dword [esi + 0x34], ecx
jmp 0x4352c5
mov eax, dword [ebx + 0x74]
mov edx, dword [ebx + 0x7c]
mov ecx, dword [ebx + 0x78]
mov eax, dword [eax + 8]
mov dword [esi + 0x298], 2
push edx
push ecx
push dword [esi + 0x64]
call eax
mov ebx, dword [ebp + 0xc]
add esp, 0xc
mov eax, dword [esi]
mov edx, dword [esi + 0x20]
mov ecx, dword [esi + 0x30]
movq xmm0, qword [esi + 0x10]
movsd xmm1, qword [esi + 0x18]
mov dword [eax], 3
mov dword [ecx + 0x10], edx
movsd qword [ecx + 8], xmm1
movq qword [ecx], xmm0
mov eax, dword [esi]
mov edi, dword [eax]
lea eax, [edi - 3]
cmp eax, 2
jae 0x4354b0
mov eax, dword [ebx + 0xac]
mov ecx, dword [ebx + 0xb8]
mov edx, dword [ebx + 0xbc]
cmp ecx, eax
sbb edx, 0
jae 0x435690
cmp eax, ecx
je 0x435690
mov eax, dword [0x69b710]
mov eax, dword [eax]
test eax, eax
je 0x4357d7
cmp byte [ebx + 0xc4], 0
je 0x43580e
mov edi, dword [ebx + 0xac]
mov edx, dword [ebx + 0xb8]
mov ecx, dword [ebx + 0xbc]
movdqa xmm0, xmmword [esi + 0x270]
xor eax, eax
cmp edx, edi
movdqu xmmword [esi + 0x70], xmm0
movdqu xmmword [esi + 0x80], xmm0
movdqu xmmword [esi + 0x90], xmm0
movdqu xmmword [esi + 0xa0], xmm0
movdqu xmmword [esi + 0xb0], xmm0
movdqu xmmword [esi + 0xc0], xmm0
movdqu xmmword [esi + 0xd0], xmm0
movdqu xmmword [esi + 0xe0], xmm0
movdqu xmmword [esi + 0xf0], xmm0
movdqu xmmword [esi + 0x100], xmm0
movdqu xmmword [esi + 0x110], xmm0
movdqu xmmword [esi + 0x120], xmm0
movdqu xmmword [esi + 0x130], xmm0
movdqu xmmword [esi + 0x140], xmm0
movdqu xmmword [esi + 0x150], xmm0
movdqu xmmword [esi + 0x160], xmm0
movdqu xmmword [esi + 0x170], xmm0
movdqu xmmword [esi + 0x180], xmm0
movdqu xmmword [esi + 0x190], xmm0
movdqu xmmword [esi + 0x1a0], xmm0
movdqu xmmword [esi + 0x1b0], xmm0
movdqu xmmword [esi + 0x1c0], xmm0
movdqu xmmword [esi + 0x1d0], xmm0
movdqu xmmword [esi + 0x1e0], xmm0
movdqu xmmword [esi + 0x1f0], xmm0
movdqu xmmword [esi + 0x200], xmm0
movdqu xmmword [esi + 0x210], xmm0
movdqu xmmword [esi + 0x220], xmm0
movdqu xmmword [esi + 0x230], xmm0
movdqu xmmword [esi + 0x240], xmm0
movdqu xmmword [esi + 0x250], xmm0
movdqu xmmword [esi + 0x260], xmm0
sbb ecx, 0
jae 0x43545e
mov ecx, edi
sub ecx, edx
je 0x43545e
jb 0x435ff7
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x70], ecx
mov dword [esi + 0x298], 1
mov eax, dword [eax]
add eax, edx
mov dword [esi + 0x74], eax
mov eax, 1
mov dword [esi + 0x6c], edx
mov ecx, dword [ebx + 0xc8]
mov edx, dword [ebx + 0xcc]
mov dword [esi + 0x68], edi
mov dword [esi + 0x298], 1
push eax
lea eax, [esi + 0x70]
push eax
push dword [ebp + 0x10]
push ecx
lea eax, [esi + 0x10]
push eax
call dword [edx + 0x1c]
add esp, 0x14
movzx ecx, byte [esi + 0x10]
cmp cl, 5
je 0x435c58
mov eax, dword [esi + 0x14]
cmp cl, 4
je 0x4358e0
jmp 0x435c5f
test edi, edi
je 0x4354df
xor eax, eax
cmp edi, 1
jne 0x4354e2
mov ecx, dword [ebx + 0x80]
mov edx, dword [ebx + 0x7c]
mov eax, ecx
sub eax, edx
neg eax
cmp ecx, edx
mov ecx, dword [ebx + 0x84]
sbb ecx, 0
mov ecx, 0
cmovae eax, ecx
jmp 0x4354e2
mov eax, dword [ebx + 0x7c]
mov ecx, dword [esi + 0x34]
mov ecx, dword [ecx]
cmp eax, ecx
cmovb ecx, eax
test ecx, ecx
je 0x435690
mov eax, dword [0x69b710]
mov eax, dword [eax]
test eax, eax
je 0x435769
mov eax, dword [esi + 0x2c]
cmp byte [ebx + 0xc4], 0
mov ecx, dword [esi]
mov dword [esi + 4], eax
mov dword [esi + 8], ecx
je 0x4357a0
movdqa xmm0, xmmword [esi + 0x270]
mov dword [esi + 0x298], 1
movdqu xmmword [esi + 0x70], xmm0
movdqu xmmword [esi + 0x80], xmm0
movdqu xmmword [esi + 0x90], xmm0
movdqu xmmword [esi + 0xa0], xmm0
movdqu xmmword [esi + 0xb0], xmm0
movdqu xmmword [esi + 0xc0], xmm0
movdqu xmmword [esi + 0xd0], xmm0
movdqu xmmword [esi + 0xe0], xmm0
movdqu xmmword [esi + 0xf0], xmm0
movdqu xmmword [esi + 0x100], xmm0
movdqu xmmword [esi + 0x110], xmm0
movdqu xmmword [esi + 0x120], xmm0
movdqu xmmword [esi + 0x130], xmm0
movdqu xmmword [esi + 0x140], xmm0
movdqu xmmword [esi + 0x150], xmm0
movdqu xmmword [esi + 0x160], xmm0
movdqu xmmword [esi + 0x170], xmm0
movdqu xmmword [esi + 0x180], xmm0
movdqu xmmword [esi + 0x190], xmm0
movdqu xmmword [esi + 0x1a0], xmm0
movdqu xmmword [esi + 0x1b0], xmm0
movdqu xmmword [esi + 0x1c0], xmm0
movdqu xmmword [esi + 0x1d0], xmm0
movdqu xmmword [esi + 0x1e0], xmm0
movdqu xmmword [esi + 0x1f0], xmm0
movdqu xmmword [esi + 0x200], xmm0
movdqu xmmword [esi + 0x210], xmm0
movdqu xmmword [esi + 0x220], xmm0
movdqu xmmword [esi + 0x230], xmm0
movdqu xmmword [esi + 0x240], xmm0
movdqu xmmword [esi + 0x250], xmm0
movdqu xmmword [esi + 0x260], xmm0
push 0x40
lea eax, [esi + 0x70]
push eax
lea eax, [esi + 4]
push eax
call fcn.0049df70
add esp, 0xc
cmp eax, 0x41
jae 0x435fe2
mov edx, dword [ebp + 0xc]
mov ecx, dword [edx + 0xcc]
push eax
lea eax, [esi + 0x70]
push eax
push dword [ebp + 0x10]
push dword [edx + 0xc8]
lea eax, [esi + 0x10]
push eax
call dword [ecx + 0x1c]
add esp, 0x14
movzx eax, byte [esi + 0x10]
cmp al, 5
je 0x435c2b
mov ecx, dword [esi + 0x14]
cmp al, 4
je 0x435ae8
jmp 0x435c31
cmp edi, 3
mov dword [ebx + 0xbc], 0
mov dword [ebx + 0xb8], 0
mov dword [ebx + 0xac], 0
mov dword [ebx + 0x70], 4
jne 0x435afd
mov ecx, dword [esi + 0x30]
mov dword [esi + 0x298], 1
mov eax, dword [ecx + 0x10]
movq xmm0, qword [ecx]
movsd xmm1, qword [ecx + 8]
mov ecx, dword [esi + 0x2c]
mov dword [esi + 0x80], eax
mov eax, dword [ebx + 0xc0]
mov dword [esi + 4], ecx
movsd qword [esi + 0x78], xmm1
movq qword [esi + 0x70], xmm0
add eax, 9
mov dword [esi + 8], eax
lea eax, [esi + 4]
push eax
lea eax, [esi + 0x70]
push eax
lea eax, [esi + 0x10]
push eax
call fcn.005117b0
add esp, 0xc
cmp dword [esi + 0x10], 0
mov ebx, dword [ebp + 0xc]
je 0x4352c5
mov eax, dword [esi]
mov eax, dword [eax]
cmp eax, 4
je 0x4352a1
cmp eax, 3
je 0x43527e
cmp eax, 1
je 0x435a7e
test eax, eax
jne 0x4352a1
mov eax, dword [ebx + 0x74]
mov edx, dword [ebx + 0x7c]
mov ecx, dword [ebx + 0x78]
mov eax, dword [eax + 8]
mov dword [esi + 0x298], 2
push edx
push ecx
push dword [esi + 0x64]
call eax
mov ebx, dword [ebp + 0xc]
add esp, 0xc
jmp 0x4352a1
mov eax, dword [0x69b164]
movzx eax, byte [eax + 8]
test al, al
je 0x435503
movzx ecx, al
cmp ecx, 1
je 0x435931
cmp ecx, 2
jne 0x43590e
mov al, 2
mov dword [esi + 0x298], 1
jmp 0x435931
mov ecx, dword [ebx + 0xac]
mov eax, dword [ebx + 0xb8]
mov edx, dword [ebx + 0xbc]
cmp eax, ecx
sbb edx, 0
jae 0x43584b
mov edx, ecx
sub edx, eax
je 0x43584b
jb 0x436015
mov ecx, dword [esi + 0x2c]
add eax, dword [ecx]
jmp 0x435aac
mov eax, dword [0x69b168]
movzx eax, byte [eax + 8]
test al, al
je 0x435309
movzx ecx, al
cmp ecx, 1
je 0x4359e9
cmp ecx, 2
jne 0x4359c6
mov dword [esi + 0x298], 1
mov al, 2
jmp 0x4359e9
mov ecx, dword [ebx + 0xac]
mov edx, dword [ebx + 0xb8]
mov eax, dword [ebx + 0xbc]
cmp edx, ecx
mov dword [esi + 0x6c], edx
mov dword [esi + 0x68], ecx
sbb eax, 0
jae 0x43589a
mov eax, ecx
sub eax, edx
jb 0x436030
mov ecx, dword [ebx + 0xa8]
mov dword [esi + 0x298], 1
add ecx, edx
jmp 0x4358a1
mov eax, dword [esi]
mov edx, dword [eax]
test edx, edx
je 0x435a9c
xor ecx, ecx
mov eax, str.unable_to_find_any_user_specified_roots_in_the_final_cert_chainC:UsersLitch1.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8_tokio_1.33.0_srcio_read_buf.rs
cmp edx, 1
jne 0x435aa2
mov edi, dword [ebx + 0x7c]
mov edx, dword [ebx + 0x80]
mov eax, dword [ebx + 0x84]
cmp edx, edi
sbb eax, 0
mov eax, 0x604a74
jae 0x435aa2
mov ecx, edi
sub ecx, edx
jb 0x436077
add edx, dword [ebx + 0x78]
mov eax, edx
jmp 0x435aa2
mov ecx, 0x604a74
xor eax, eax
mov edx, dword [ebx + 0xc8]
mov edi, dword [ebx + 0xcc]
mov dword [esi + 0x298], 1
push eax
push ecx
push dword [ebp + 0x10]
push edx
lea eax, [esi + 0x70]
push eax
call dword [edi + 0x10]
add esp, 0x14
movzx ecx, byte [esi + 0x70]
cmp cl, 5
je 0x435c6e
mov eax, dword [esi + 0x74]
cmp cl, 4
jne 0x435cd5
mov ecx, dword [esi + 0x6c]
mov ebx, dword [ebp + 0xc]
add ecx, eax
mov eax, dword [esi + 0x68]
jb 0x435fb0
cmp ecx, eax
ja 0x435fc9
mov dword [ebx + 0xb8], ecx
mov dword [ebx + 0xbc], 0
jmp 0x4352c5
mov dword [esi + 0x298], 1
push dword [0x69b164]
call fcn.0059e2f0
add esp, 4
mov ebx, dword [ebp + 0xc]
test al, al
je 0x435503
mov ecx, dword [0x69b164]
movzx eax, al
mov dword [esi + 0x298], 1
mov ecx, dword [ecx]
push eax
push ecx
call fcn.005313d0
add esp, 8
mov ebx, dword [ebp + 0xc]
test al, al
je 0x435503
mov eax, dword [0x69b164]
mov eax, dword [eax]
mov ecx, dword [eax + 0x20]
test ecx, ecx
je 0x43604b
mov edx, dword [eax + 0x1c]
movq xmm0, qword [eax + 0x24]
lea edi, [esi + 4]
mov dword [esi + 0x10], edi
mov dword [esi + 0x14], 1
mov dword [esi + 0x70], edx
mov dword [esi + 0x74], ecx
lea ecx, [eax + 0x1c]
movq qword [esi + 0x78], xmm0
mov dword [esi + 0x80], 0
mov dword [esi + 0x18], ecx
lea ecx, [esi + 0x70]
mov dword [esi + 4], ecx
lea ecx, [esi + 0x10]
mov dword [esi + 8], 0x604bc0
mov dword [esi + 0xc], 0x604bc4
push ecx
push eax
call fcn.00531b00
add esp, 8
mov ebx, dword [ebp + 0xc]
jmp 0x435503
mov dword [esi + 0x298], 1
push dword [0x69b168]
call fcn.0059e2f0
add esp, 4
mov ebx, dword [ebp + 0xc]
test al, al
je 0x435309
mov ecx, dword [0x69b168]
movzx eax, al
mov dword [esi + 0x298], 1
mov ecx, dword [ecx]
push eax
push ecx
call fcn.005313d0
add esp, 8
mov ebx, dword [ebp + 0xc]
test al, al
je 0x435309
mov eax, dword [0x69b168]
mov eax, dword [eax]
mov ecx, dword [eax + 0x20]
test ecx, ecx
je 0x436061
mov edx, dword [eax + 0x1c]
movq xmm0, qword [eax + 0x24]
lea edi, [esi + 4]
mov dword [esi + 0x10], edi
mov dword [esi + 0x14], 1
mov dword [esi + 0x70], edx
mov dword [esi + 0x74], ecx
lea ecx, [eax + 0x1c]
movq qword [esi + 0x78], xmm0
mov dword [esi + 0x80], 0
mov dword [esi + 0x18], ecx
lea ecx, [esi + 0x70]
mov dword [esi + 4], ecx
lea ecx, [esi + 0x10]
mov dword [esi + 8], 0x604be4
mov dword [esi + 0xc], 0x604bc4
push ecx
push eax
call fcn.00531b00
add esp, 8
mov ebx, dword [ebp + 0xc]
jmp 0x435309
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x4352a1
push 1
push eax
push dword [ebx + 0x78]
call fcn.00407080
add esp, 0xc
jmp 0x4352a1
mov eax, dword [ebx + 0x78]
mov ecx, dword [ebx + 0x7c]
mov edx, dword [esi + 0x34]
mov edx, dword [edx]
cmp ecx, edx
cmovb edx, ecx
mov ecx, dword [ebx + 0xcc]
mov dword [esi + 0x298], 1
push edx
push eax
push dword [ebp + 0x10]
push dword [ebx + 0xc8]
lea eax, [esi + 0x70]
push eax
call dword [ecx + 0x10]
add esp, 0x14
movzx eax, byte [esi + 0x70]
cmp al, 5
je 0x435c40
mov ecx, dword [esi + 0x74]
cmp al, 4
jne 0x435c9c
push ecx
lea eax, [esi + 4]
push eax
call fcn.0049e150
add esp, 8
mov ebx, dword [ebp + 0xc]
jmp 0x4352c5
cmp edi, 4
je 0x435d58
mov ecx, dword [esi + 0x30]
mov dword [esi], edi
mov eax, dword [ecx + 0x10]
movsd xmm1, qword [ecx + 8]
movsd xmm0, qword [ecx]
mov dword [esi + 0x20], eax
mov eax, dword [esi + 0x34]
movsd qword [esi + 0x18], xmm1
movsd qword [esi + 0x10], xmm0
movsd xmm1, qword [eax + 0x10]
movsd xmm0, qword [eax + 0x18]
movsd xmm2, qword [eax]
movsd qword [esi + 0x80], xmm1
movsd xmm1, qword [eax + 8]
mov eax, dword [ebx + 0x38]
movsd qword [esi + 0x88], xmm0
movsd qword [esi + 0x70], xmm2
cmp eax, 3
movsd qword [esi + 0x78], xmm1
je 0x435d06
cmp eax, 1
je 0x435ceb
test eax, eax
jne 0x435d06
mov edi, dword [ebp + 0xc]
lea eax, [edi + 0x3c]
mov ecx, dword [edi + 0x40]
lea edx, [edi + 0x48]
mov dword [esi + 0x2c], eax
mov eax, dword [edi + 0x3c]
mov edi, dword [edi + 0x44]
mov eax, dword [eax + 8]
mov dword [esi + 0x298], 3
push edi
push ecx
push edx
call eax
add esp, 0xc
jmp 0x435d06
mov edi, dword [0x69b160]
movzx eax, byte [edi + 8]
test al, al
je 0x435229
movzx ecx, al
cmp ecx, 1
je 0x435bc5
cmp ecx, 2
jne 0x435f9a
mov al, 2
movzx eax, al
push eax
push dword [edi]
call fcn.005313d0
add esp, 8
test al, al
je 0x435229
mov eax, dword [edi]
mov dword [esi + 0x70], 0x604a74
mov dword [esi + 0x74], 0
lea edi, [esi + 0x38]
lea ecx, [eax + 0x1c]
mov dword [esi + 0x78], ecx
lea ecx, [esi + 0x70]
push ecx
push eax
push edi
call fcn.005310b0
add esp, 0xc
cmp dword [esi + 0x40], 2
lea eax, [esi + 0x40]
mov dword [esi + 0x28], eax
je 0x43523d
mov dword [esi + 0x298], 0
push edi
push eax
call fcn.00532240
add esp, 8
jmp 0x43523d
cmp al, 5
je 0x435c44
jmp 0x435caf
movzx edx, byte [esi + 0x13]
movzx edi, word [esi + 0x11]
mov byte [esi + 0x5a], dl
mov word [esi + 0x58], di
cmp al, 5
jne 0x435caf
mov ecx, dword [ebp + 8]
mov byte [ecx], al
cmp dword [esi + 0x40], 2
jne 0x435e48
jmp 0x435eae
cmp cl, 5
jne 0x435c73
jmp 0x435c88
movzx edx, byte [esi + 0x13]
movzx edi, word [esi + 0x11]
mov byte [esi + 6], dl
mov word [esi + 4], di
cmp cl, 5
je 0x435c88
movzx edx, byte [esi + 6]
mov edi, dword [ebp + 8]
movzx ebx, word [esi + 4]
mov byte [edi + 3], dl
mov word [edi + 1], bx
mov dword [edi + 4], eax
mov eax, dword [ebp + 8]
mov byte [eax], cl
cmp dword [esi + 0x40], 2
jne 0x435e48
jmp 0x435eae
movzx edx, byte [esi + 0x73]
movzx edi, word [esi + 0x71]
mov byte [esi + 0x5a], dl
mov word [esi + 0x58], di
cmp al, 5
je 0x435c44
movzx edx, byte [esi + 0x5a]
mov edi, dword [ebp + 8]
movzx ebx, word [esi + 0x58]
mov byte [edi + 3], dl
mov word [edi + 1], bx
mov dword [edi + 4], ecx
mov byte [edi], al
cmp dword [esi + 0x40], 2
jne 0x435e48
jmp 0x435eae
movzx edx, byte [esi + 0x73]
movzx edi, word [esi + 0x71]
mov byte [esi + 6], dl
mov word [esi + 4], di
cmp cl, 5
jne 0x435c73
jmp 0x435c88
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x44]
test eax, eax
je 0x435d06
push 1
push eax
mov eax, dword [ebp + 0xc]
push dword [eax + 0x40]
call fcn.00407080
add esp, 0xc
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi]
movsd xmm1, qword [esi + 0x18]
movq xmm0, qword [esi + 0x10]
movsd xmm3, qword [esi + 0x70]
movsd xmm2, qword [esi + 0x80]
mov dword [ecx + 0x38], eax
movsd qword [ecx + 0x44], xmm1
mov eax, dword [esi + 0x20]
movsd xmm1, qword [esi + 0x78]
movq qword [ecx + 0x3c], xmm0
mov ebx, ecx
mov dword [ecx + 0x4c], eax
movsd qword [ecx + 0x58], xmm1
movsd xmm1, qword [esi + 0x88]
movsd qword [ecx + 0x50], xmm3
movsd qword [ecx + 0x60], xmm2
movsd qword [ecx + 0x68], xmm1
mov eax, dword [0x69b710]
mov eax, dword [eax]
test eax, eax
je 0x435df6
mov eax, dword [ebx + 0xc8]
mov ecx, dword [ebx + 0xcc]
mov dword [esi + 0x298], 1
push dword [ebp + 0x10]
push eax
lea eax, [esi + 0x70]
push eax
call dword [ecx + 0x14]
add esp, 0xc
movzx eax, byte [esi + 0x70]
cmp eax, 5
je 0x435e3d
cmp eax, 4
jne 0x435e2e
mov eax, dword [ebp + 8]
cmp dword [esi + 0x40], 2
mov byte [eax], 4
je 0x435eae
lea eax, [esi + 0x38]
mov dword [esi + 0x298], 0
push eax
push dword [esi + 0x28]
call fcn.00532270
add esp, 8
cmp dword [esi + 0x40], 2
je 0x435eae
mov ecx, dword [esi + 0x3c]
mov eax, dword [esi + 0x38]
mov dword [esi + 0x298], 4
push ecx
push eax
push dword [esi + 0x28]
call fcn.005322a0
add esp, 0xc
jmp 0x435e84
mov edx, dword [0x69b16c]
movzx eax, byte [edx + 8]
test al, al
je 0x435d67
movzx ecx, al
cmp ecx, 1
je 0x435ee9
cmp ecx, 2
jne 0x435ec5
mov al, 2
mov dword [esi + 0x298], 1
jmp 0x435ee9
mov ecx, dword [esi + 0x71]
mov edx, dword [esi + 0x74]
mov edi, dword [ebp + 8]
mov dword [edi + 4], edx
mov dword [edi + 1], ecx
mov ecx, dword [ebp + 8]
mov byte [ecx], al
cmp dword [esi + 0x40], 2
je 0x435eae
lea eax, [esi + 0x38]
mov dword [esi + 0x298], 0
push eax
push dword [esi + 0x28]
call fcn.00532270
add esp, 8
cmp dword [esi + 0x40], 2
je 0x435eae
mov ecx, dword [esi + 0x3c]
mov eax, dword [esi + 0x38]
mov dword [esi + 0x298], 5
push ecx
push eax
push dword [esi + 0x28]
call fcn.005322a0
add esp, 0xc
mov eax, dword [esi + 0x40]
cmp eax, 2
je 0x435eae
test eax, eax
je 0x435eae
mov eax, dword [esi + 0x44]
lock dec dword [eax]
jne 0x435eae
lea eax, [esi + 0x44]
mov dword [esi + 0x298], 0xffffffff
push eax
call fcn.0042de60
add esp, 4
mov eax, dword [esi + 0x290]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esi + 0x298], 1
push edx
call fcn.0059e2f0
add esp, 4
mov ebx, dword [ebp + 0xc]
mov edx, dword [0x69b16c]
test al, al
je 0x435d67
mov ecx, dword [edx]
movzx eax, al
mov dword [esi + 0x298], 1
push eax
push ecx
call fcn.005313d0
add esp, 8
test al, al
mov ebx, dword [ebp + 0xc]
mov eax, dword [0x69b16c]
je 0x435d67
mov eax, dword [eax]
mov ecx, dword [eax + 0x20]
test ecx, ecx
je 0x436092
mov edx, dword [eax + 0x1c]
movq xmm0, qword [eax + 0x24]
mov dword [esi + 0x70], 0x604c08
mov dword [esi + 0x74], 1
mov dword [esi + 0x80], 0
mov dword [esi + 0x78], 0x604a74
mov dword [esi + 0x7c], 0
mov dword [esi + 0x10], edx
mov dword [esi + 0x14], ecx
lea ecx, [esi + 0x10]
movq qword [esi + 0x18], xmm0
mov dword [esi + 0x20], 0
mov dword [esi + 0x58], ecx
lea ecx, [esi + 0x58]
mov dword [esi + 4], ecx
lea ecx, [eax + 0x1c]
mov dword [esi + 8], 1
mov dword [esi + 0xc], ecx
lea ecx, [esi + 0x70]
mov dword [esi + 0x5c], ecx
lea ecx, [esi + 4]
mov dword [esi + 0x60], 0x604a74
push ecx
push eax
call fcn.00531b00
add esp, 8
mov ebx, dword [ebp + 0xc]
jmp 0x435d67
push edi
call fcn.0059e2f0
add esp, 4
test al, al
jne 0x435bc5
jmp 0x435229
push 0x605344
push 8
push 0x60533c
call fcn.005a0a40
add esp, 0xc
jmp 0x4360a6
push 0x60538c
push 0x36
push 0x605354
call fcn.005a0b60
add esp, 0xc
jmp 0x4360a6
push 0x604c10
push 0x40
push eax
call fcn.005a0fc0
add esp, 0xc
jmp 0x4360a6
mov dword [esi + 0x298], 1
push 0x60532c
push edi
push edx
call fcn.005a0f50
add esp, 0xc
jmp 0x4360a6
mov dword [esi + 0x298], 1
push 0x60532c
push ecx
push eax
call fcn.005a0f50
add esp, 0xc
jmp 0x4360a6
mov dword [esi + 0x298], 1
push 0x60532c
push ecx
push edx
call fcn.005a0f50
add esp, 0xc
jmp 0x4360a6
push 0x604bb0
push 0x22
push 0x604a14
call fcn.005a0a40
add esp, 0xc
jmp 0x4360a6
push 0x604bd4
push 0x22
push 0x604a14
call fcn.005a0a40
add esp, 0xc
jmp 0x4360a6
mov dword [esi + 0x298], 1
push 0x60532c
push edi
push edx
call fcn.005a0f50
add esp, 0xc
jmp 0x4360a6
push 0x604be8
push 0x22
push 0x604a14
call fcn.005a0a40
add esp, 0xc
ud2