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

Disassembly:
sub esp, 0x28
push ebx
push ebp
push esi
mov esi, dword [esp + 0x4c]
push edi
xor edi, edi
mov byte [esp + 0x50], 0
mov byte [esp + 0x12], 0
mov byte [esp + 0x13], 0
test esi, esi
je 0x5e3457
cmp dword [esi + 0x1100], 0xc0dedbad
jne 0x5e3457
lea ebp, [esi + 0x24]
cmp dword [esi + 8], 0
mov byte [esp + 0x11], 0
mov dword [esp + 0x18], 0
jne 0x5e20db
mov eax, dword [ebp]
cmp eax, 2
jle 0x5e20db
cmp eax, 0xe
jl 0x5e342e
mov ecx, dword [esp + 0x3c]
mov al, byte [ecx + 0x79]
mov byte [ecx + 0x79], 0
test al, al
je 0x5e213a
mov eax, dword [ecx + 0x24]
mov dword [esp + 0x2c], eax
test eax, eax
je 0x5e213a
mov ebx, dword [eax]
cmp dword [ebx + 0x24], 2
je 0x5e2115
push ebx
mov dword [ebx + 0x24], 2
call fcn.005f4100
mov eax, dword [esp + 0x30]
add esp, 4
mov ecx, dword [esp + 0x3c]
push 0
push eax
lea eax, [ecx + 0x24]
push eax
call fcn.005f5a30
push 7
push 0
push 0
push ebx
call fcn.005e0870
add esp, 0x1c
mov byte [ebx + 0x1001], 1
lea ebp, [esi + 0x24]
mov ecx, dword [esi + 8]
mov ebx, ebp
test ecx, ecx
je 0x5e2153
mov eax, dword [ebp]
sub eax, 3
cmp eax, 0xb
ja 0x5e2153
mov dword [ecx], esi
lea ebx, [esi + 0x24]
cmp dword [esi + 8], 0
je 0x5e22b9
mov ecx, dword [ebp]
lea eax, [ecx - 2]
cmp eax, 0xc
ja 0x5e22b9
cmp ecx, 8
setle al
movzx eax, al
push eax
lea eax, [esp + 0x44]
push eax
push esi
call fcn.005f05a0
add esp, 0xc
test edx, edx
jg 0x5e22b9
jl 0x5e2196
test eax, eax
jae 0x5e22b9
mov eax, dword [ebp]
movups xmm0, xmmword [esi + 0xb98]
cmp eax, 3
jne 0x5e21d4
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esp + 0x60]
movups xmmword [eax], xmm0
call fcn.005f57e0
push edx
push eax
push str.Resolving_timed_out_after__I64d_milliseconds
push esi
call fcn.005eefe0
add esp, 0x30
jmp 0x5e228b
cmp eax, 4
jne 0x5e2208
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esp + 0x60]
movups xmmword [eax], xmm0
call fcn.005f57e0
push edx
push eax
push str.Connection_timed_out_after__I64d_milliseconds
push esi
call fcn.005eefe0
add esp, 0x30
jmp 0x5e228b
mov edx, dword [esi + 0x88]
mov eax, edx
mov ecx, dword [esi + 0x8c]
and eax, ecx
mov ebx, dword [esi + 0x98]
mov edi, dword [esi + 0x9c]
cmp eax, 0xffffffff
je 0x5e225c
push ecx
push edx
push edi
push ebx
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esp + 0x70]
movups xmmword [eax], xmm0
call fcn.005f57e0
add esp, 0x20
push edx
push eax
push str.Operation_timed_out_after__I64d_milliseconds_with__I64d_out_of__I64d_bytes_received
push esi
call fcn.005eefe0
add esp, 0x20
jmp 0x5e228b
push edi
push ebx
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esp + 0x68]
movups xmmword [eax], xmm0
call fcn.005f57e0
add esp, 0x20
push edx
push eax
push str.Operation_timed_out_after__I64d_milliseconds_with__I64d_bytes_received
push esi
call fcn.005eefe0
add esp, 0x18
cmp dword [esi + 0x24], 8
jle 0x5e22a3
push 2
push dword [esi + 8]
call fcn.005efa90
add esp, 8
mov byte [esp + 0x11], 1
push 1
mov edi, 0x1c
push edi
push esi
call fcn.005e1bc0
add esp, 0xc
jmp case.0x5e22c5.1
mov ecx, dword [ebp]
cmp ecx, 0x10
ja case.default.0x5e22c5
jmp dword [ecx*4 + 0x5e3464]
push esi
call fcn.005f4120
mov edi, eax
add esp, 4
test edi, edi
jne case.0x5e22c5.1
cmp dword [esi + 0x24], 2
je 0x5e22f5
push esi
mov dword [esi + 0x24], 2
call fcn.005f4100
add esp, 4
push 1
push esi
call fcn.005fc0d0
add esp, 8
mov dword [esp + 0x18], 0xffffffff
jmp case.0x5e22c5.1
push 2
push esi
call fcn.005fc0d0
mov eax, dword [esi + 0x640]
add esp, 8
test eax, eax
je 0x5e2330
push 9
cdq
push edx
push eax
push esi
call fcn.005e0870
add esp, 0x10
mov eax, dword [esi + 0x644]
test eax, eax
je 0x5e2348
push 2
cdq
push edx
push eax
push esi
call fcn.005e0870
add esp, 0x10
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x19]
push eax
push esi
call fcn.005ea690
mov edi, eax
add esp, 0xc
cmp edi, 0x59
jne 0x5e238e
cmp dword [esi + 0x24], 1
je 0x5e236f
mov dword [esi + 0x24], 1
lea eax, [esi + 0xc]
push eax
mov eax, dword [esp + 0x40]
push esi
push dword [eax + 0x28]
add eax, 0x24
push eax
call fcn.005f59b0
add esp, 0x10
xor edi, edi
jmp case.0x5e22c5.1
cmp byte [esi + 0x1001], 0
je 0x5e23f1
push str.Transfer_was_pending__now_try_another_n
push esi
call fcn.005ef0a0
mov eax, dword [esi + 0x78]
add esp, 8
add eax, 0x24
mov dword [esp + 0x2c], eax
mov ebp, dword [eax]
test ebp, ebp
je 0x5e23f1
mov ebx, dword [ebp]
cmp dword [ebx + 0x24], 2
je 0x5e23d2
push ebx
mov dword [ebx + 0x24], 2
call fcn.005f4100
mov eax, dword [esp + 0x30]
add esp, 4
push 0
push ebp
push eax
call fcn.005f5a30
push 7
push 0
push 0
push ebx
call fcn.005e0870
add esp, 0x1c
mov byte [ebx + 0x1001], 1
test edi, edi
jne case.0x5e22c5.1
cmp byte [esp + 0x15], 0
je 0x5e2416
cmp dword [esi + 0x24], 3
je case.0x5e22c5.1
mov dword [esi + 0x24], 3
jmp case.0x5e22c5.1
cmp byte [esp + 0x50], 0
mov dword [esp + 0x18], 0xffffffff
je 0x5e2441
cmp dword [esi + 0x24], 8
je case.0x5e22c5.1
push esi
mov dword [esi + 0x24], 8
call fcn.005f3700
jmp 0x5e323d
push dword [esi + 8]
call fcn.005f3730
add esp, 4
test al, al
jne 0x5e264d
cmp dword [esi + 0x24], 4
je case.0x5e22c5.1
mov dword [esi + 0x24], 4
jmp case.0x5e22c5.1
mov eax, dword [esi + 8]
mov dword [esp + 0x1c], 0
cmp byte [eax + 0x2aa], 0
je 0x5e2486
mov ebx, dword [eax + 0xe4]
jmp 0x5e249d
cmp byte [eax + 0x2a7], 0
je 0x5e2497
mov ebx, dword [eax + 0xb4]
jmp 0x5e249d
mov ebx, dword [eax + 0x9c]
push dword [eax + 0xfc]
push ebx
push eax
call fcn.005f6170
add esp, 0xc
mov dword [esp + 0x1c], eax
test eax, eax
je 0x5e24cc
push ebx
push 0x6635c8
push esi
xor edi, edi
call fcn.005ef0a0
add esp, 0xc
cmp dword [esp + 0x1c], edi
jne 0x5e24de
lea eax, [esp + 0x1c]
push eax
push dword [esi + 8]
call fcn.005f69c0
add esp, 8
mov edi, eax
push esi
push dword [esp + 0x40]
call fcn.005e35a0
add esp, 8
cmp dword [esp + 0x1c], 0
je 0x5e255b
lea eax, [esp + 0x50]
push eax
push dword [esi + 8]
call fcn.005f6740
mov edi, eax
add esp, 8
test edi, edi
je 0x5e2519
mov dword [esi + 8], 0
mov byte [esp + 0x11], 1
jmp case.0x5e22c5.1
cmp byte [esp + 0x50], 0
mov dword [esp + 0x18], 0xffffffff
jne 0x5e2425
push dword [esi + 8]
call fcn.005f3730
mov ecx, dword [esi + 0x24]
add esp, 4
test al, al
je 0x5e2546
cmp ecx, 5
jmp 0x5e2651
cmp ecx, 4
je case.0x5e22c5.1
mov dword [esi + 0x24], 4
jmp case.0x5e22c5.1
test edi, edi
je case.0x5e22c5.1
mov byte [esp + 0x11], 1
jmp case.0x5e22c5.1
lea eax, [esp + 0x50]
push eax
push dword [esi + 8]
call fcn.005f8d10
mov edi, eax
add esp, 8
mov eax, dword [esi + 8]
cmp byte [eax + 0x2bc], 0
je 0x5e25bb
xor edi, edi
mov dword [esp + 0x18], 0xffffffff
push edi
push edi
push esi
call fcn.005e1bc0
add esp, 0xc
cmp dword [ebx], 2
je case.0x5e22c5.1
push esi
mov dword [esi + 0x24], 2
call fcn.005f4100
jmp 0x5e323d
test edi, edi
jne 0x5e2563
cmp dword [eax + 0xf0], 2
jne 0x5e25d5
cmp byte [eax + 0x2a0], 0
je case.0x5e22c5.1
push eax
call fcn.005f36e0
add esp, 4
test al, al
je case.0x5e22c5.1
cmp dword [esi + 0x24], 6
mov dword [esp + 0x18], 0xffffffff
je case.0x5e22c5.1
mov dword [esi + 0x24], 6
jmp case.0x5e22c5.1
lea eax, [esp + 0x16]
push eax
push 0
push dword [esi + 8]
call fcn.005efd10
add esp, 0xc
mov edi, eax
cmp byte [esp + 0x16], 0
je 0x5e26a8
test edi, edi
jne 0x5e26b0
mov eax, dword [esi + 8]
cmp dword [eax + 0xf0], 2
jne 0x5e2640
cmp byte [eax + 0x2a0], 0
je 0x5e264d
push eax
call fcn.005f3730
add esp, 4
test al, al
je 0x5e2663
cmp dword [esi + 0x24], 5
je case.0x5e22c5.1
mov dword [esi + 0x24], 5
jmp case.0x5e22c5.1
mov eax, dword [esi + 8]
mov dword [esp + 0x18], 0xffffffff
mov cl, byte [eax + 0x2b3]
xor eax, eax
test cl, cl
sete al
add eax, 5
cmp dword [esi + 0x24], eax
je case.0x5e22c5.1
mov dword [esi + 0x24], eax
xor eax, eax
test cl, cl
sete al
mov eax, dword [eax*4 + 0x663404]
test eax, eax
je case.0x5e22c5.1
push esi
call eax
jmp 0x5e323d
test edi, edi
je case.0x5e22c5.1
push esi
call fcn.00530f40
push 1
push edi
push esi
call fcn.005e1bc0
add esp, 0x10
mov byte [esp + 0x11], 1
jmp case.0x5e22c5.1
mov edi, dword [esi + 8]
xor cl, cl
xor ebx, ebx
mov byte [esp + 0x50], cl
cmp byte [edi + 0x2a2], bl
je 0x5e2706
cmp byte [edi + 0x2b1], bl
je 0x5e2712
mov eax, dword [edi + 0x2e8]
movzx ecx, cl
cmp dword [eax + 0x18], ebx
mov eax, 1
cmove ecx, eax
xor edi, edi
mov byte [esp + 0x50], cl
jmp 0x5e27b2
cmp byte [edi + 0x2b1], bl
jne 0x5e27a6
push 0
push edi
call fcn.005f37c0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x5e2741
mov edi, ebx
push esi
call fcn.00530f40
push 1
push ebx
push esi
call fcn.005e1bc0
add esp, 0x10
mov byte [esp + 0x11], 1
jmp case.0x5e22c5.1
cmp dword [edi + 0xf0], 2
jne 0x5e2757
cmp byte [edi + 0x2a0], 0
jne 0x5e2757
xor edi, edi
jmp 0x5e27b2
cmp byte [edi + 0x2b3], 0
je 0x5e277a
cmp byte [edi + 0x2aa], 0
je 0x5e277a
push edi
call fcn.005f3730
add esp, 4
test al, al
je 0x5e277a
xor edi, edi
jmp 0x5e27b2
mov eax, dword [edi + 0x2e8]
mov eax, dword [eax + 0x14]
test eax, eax
je 0x5e279a
lea ecx, [esp + 0x50]
push ecx
push edi
call eax
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x5e279f
jmp 0x5e27a6
mov byte [esp + 0x50], 1
mov byte [edi + 0x2b1], 1
mov eax, ebx
mov edi, ebx
test eax, eax
jne 0x5e2725
cmp byte [esp + 0x50], 0
mov eax, dword [esi + 0x24]
jne 0x5e27d1
cmp eax, 7
je case.0x5e22c5.1
mov dword [esi + 0x24], 7
jmp case.0x5e22c5.1
cmp eax, 8
je 0x5e27e6
mov dword [esi + 0x24], 8
push esi
call fcn.005f3700
add esp, 4
mov dword [esp + 0x18], 0xffffffff
jmp case.0x5e22c5.1
mov edx, dword [esi + 8]
test edx, edx
je 0x5e2835
mov eax, dword [edx + 0x2e8]
cmp dword [eax + 0x18], 0
je 0x5e2835
mov byte [esp + 0x50], 0
lea ecx, [esp + 0x50]
mov eax, dword [edx + 0x2e8]
push ecx
push edx
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [esi + 0x24]
mov edi, eax
add esp, 8
lea eax, [esi + 0x24]
test edi, edi
jne 0x5e26b0
mov dl, byte [esp + 0x50]
jmp 0x5e2840
mov dl, 1
lea eax, [esi + 0x24]
mov byte [esp + 0x50], dl
xor edi, edi
test dl, dl
je case.0x5e22c5.1
cmp ecx, 8
je 0x5e27e6
mov dword [eax], 8
jmp 0x5e27dd
cmp byte [esi + 0xad5], 0
je 0x5e2886
push 0
push dword [esi + 8]
call fcn.005efa90
add esp, 8
cmp dword [ebx], 0xe
je 0x5e2877
mov dword [esi + 0x24], 0xe
xor edi, edi
mov dword [esp + 0x18], 0xffffffff
jmp case.0x5e22c5.1
mov ebp, dword [esi + 8]
xor ebx, ebx
mov eax, dword [ebp + 0x2e8]
mov eax, dword [eax + 8]
test eax, eax
je 0x5e28ca
lea ecx, [esp + 0x12]
push ecx
push ebp
call eax
mov ebx, eax
add esp, 8
mov edi, eax
test ebx, ebx
jne 0x5e28ca
cmp byte [esp + 0x12], al
je 0x5e28ca
mov eax, dword [ebp]
push 6
mov byte [eax + 0x58d], 0
push dword [ebp]
call fcn.005fc0d0
add esp, 8
jmp 0x5e28d4
mov edi, ebx
test ebx, ebx
jne 0x5e297a
cmp byte [esp + 0x12], 0
jne 0x5e2935
cmp byte [esi + 0xffb], 0
je 0x5e291b
mov eax, dword [esi + 0x1008]
cmp eax, 7
je 0x5e28f4
cmp eax, 5
jne 0x5e291b
push 0
push 0
push esi
call fcn.005e1bc0
add esp, 0xc
cmp dword [esi + 0x24], 0xe
je 0x5e290e
mov dword [esi + 0x24], 0xe
mov dword [esp + 0x18], 0xffffffff
jmp case.0x5e22c5.1
cmp dword [esi + 0x24], 9
je 0x5e2928
mov dword [esi + 0x24], 9
mov dword [esp + 0x18], 0
jmp case.0x5e22c5.1
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0x24]
cmp byte [eax + 0x2b0], 0
je 0x5e295d
cmp ecx, 0xa
je 0x5e2950
mov dword [esi + 0x24], 0xa
mov dword [esp + 0x18], 0
jmp case.0x5e22c5.1
cmp ecx, 0xb
je 0x5e27e6
mov dword [esi + 0x24], 0xb
mov dword [esp + 0x18], 0xffffffff
jmp case.0x5e22c5.1
cmp ebx, 0x37
jne 0x5e2a38
mov eax, dword [esi + 8]
cmp byte [eax + 0x2a5], 0
je 0x5e2a38
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1c], 0
push ecx
push eax
call fcn.005f47e0
add esp, 8
test eax, eax
je 0x5e29b4
mov edi, eax
mov byte [esp + 0x11], 1
push esi
call fcn.00530f40
push 0
push edi
push esi
call fcn.005e1bc0
mov ecx, dword [esp + 0x2c]
add esp, 0x10
test ecx, ecx
je 0x5e2a27
test eax, eax
je 0x5e29e5
cmp eax, 0x37
je 0x5e29e5
push ecx
mov edi, eax
call dword [0x6b7584]
jmp 0x5e323d
push 2
push ecx
push esi
call fcn.005f3e40
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x5e2a17
cmp dword [esi + 0x24], 2
je 0x5e2a0d
push esi
mov dword [esi + 0x24], 2
call fcn.005f4100
add esp, 4
mov dword [esp + 0x18], 0xffffffff
xor edi, edi
mov ecx, dword [esp + 0x1c]
push ecx
call dword [0x6b7584]
jmp 0x5e323d
push ecx
mov byte [esp + 0x15], 1
call dword [0x6b7584]
jmp 0x5e323d
push esi
call fcn.00530f40
add esp, 4
cmp dword [esi + 8], 0
je 0x5e26c2
push 0
push ebx
push esi
call fcn.005e1bc0
add esp, 0xc
mov byte [esp + 0x11], 1
jmp case.0x5e22c5.1
mov edx, dword [esi + 8]
test edx, edx
je 0x5e2ab5
mov eax, dword [edx + 0x2e8]
cmp dword [eax + 0x1c], 0
je 0x5e2ab5
mov byte [esp + 0x12], 0
lea ecx, [esp + 0x12]
mov eax, dword [edx + 0x2e8]
push ecx
push edx
mov eax, dword [eax + 0x1c]
call eax
mov ecx, dword [esi + 0x24]
lea edx, [esi + 0x24]
mov edi, eax
add esp, 8
test edi, edi
je 0x5e2abf
push esi
call fcn.00530f40
push 0
push edi
push esi
call fcn.005e1bc0
add esp, 0x10
mov byte [esp + 0x11], 1
jmp case.0x5e22c5.1
mov byte [esp + 0x12], 1
lea edx, [esi + 0x24]
xor edi, edi
cmp byte [esp + 0x12], 0
je case.0x5e22c5.1
mov eax, dword [esi + 8]
mov bl, byte [eax + 0x2b0]
xor eax, eax
test bl, bl
sete al
add eax, 0xa
cmp ecx, eax
je 0x5e27e6
mov dword [edx], eax
xor eax, eax
test bl, bl
sete al
mov eax, dword [eax*4 + 0x663418]
test eax, eax
je 0x5e27e6
push esi
call eax
add esp, 4
mov dword [esp + 0x18], 0xffffffff
jmp case.0x5e22c5.1
mov edi, dword [esi + 8]
xor edx, edx
mov dword [esp + 0x20], edx
xor ebp, ebp
mov dword [esp + 0x2c], edi
mov eax, dword [edi + 0x2e8]
mov eax, dword [eax + 0x10]
test eax, eax
je 0x5e2b3f
lea ecx, [esp + 0x20]
push ecx
push edi
call eax
mov ecx, dword [ebx]
add esp, 8
mov edx, dword [esp + 0x20]
mov ebp, eax
mov edi, ebp
test ebp, ebp
jne 0x5e2b6c
cmp edx, 1
jne 0x5e2b6c
mov ecx, dword [esp + 0x2c]
push 6
mov eax, dword [ecx]
mov byte [eax + 0x58d], 0
push dword [ecx]
call fcn.005fc0d0
mov ecx, dword [esi + 0x24]
add esp, 8
mov edx, dword [esp + 0x20]
jmp 0x5e2b72
mov edi, ebp
test ebp, ebp
jne 0x5e2bb6
test edx, edx
je 0x5e2928
xor eax, eax
cmp edx, 1
sete al
lea eax, [eax*2 + 9]
cmp ecx, eax
je 0x5e27e6
mov dword [esi + 0x24], eax
mov eax, dword [eax*4 + 0x6633f0]
test eax, eax
je 0x5e27e6
push esi
call eax
add esp, 4
mov dword [esp + 0x18], 0xffffffff
jmp case.0x5e22c5.1
push esi
call fcn.00530f40
push 0
push ebp
push esi
call fcn.005e1bc0
add esp, 0x10
mov byte [esp + 0x11], 1
jmp case.0x5e22c5.1
mov eax, dword [esi + 8]
mov edx, ecx
cmp byte [eax + 0x2bf], 0
je 0x5e2c32
mov eax, dword [esp + 0x3c]
add eax, 0x24
mov dword [esp + 0x2c], eax
mov ebp, dword [eax]
test ebp, ebp
je 0x5e2c32
mov ebx, dword [ebp]
cmp dword [ebx + 0x24], 2
je 0x5e2c0e
push ebx
mov dword [ebx + 0x24], 2
call fcn.005f4100
mov eax, dword [esp + 0x30]
add esp, 4
push 0
push ebp
push eax
call fcn.005f5a30
push 7
push 0
push 0
push ebx
call fcn.005e0870
mov byte [ebx + 0x1001], 1
add esp, 0x1c
mov edx, dword [esi + 0x24]
mov ecx, edx
mov eax, dword [esi + 8]
cmp dword [eax + 0x30c], 0xffffffff
jne 0x5e2c82
cmp dword [eax + 0x310], 0xffffffff
jne 0x5e2c82
cmp byte [esi + 0xffb], 0
je 0x5e2c69
mov eax, dword [eax + 0x2e8]
test dword [eax + 0x44], 0x1000
jne 0x5e2c69
mov dword [esi + 0x1008], 7
cmp ecx, 0xe
je 0x5e2c8e
mov dword [esi + 0x24], 0xe
mov dword [esp + 0x18], 0xffffffff
jmp case.0x5e22c5.1
cmp edx, 0xc
je 0x5e2c8e
mov dword [esi + 0x24], 0xc
mov dword [esp + 0x18], 0xffffffff
jmp case.0x5e22c5.1
push dword [esi + 8]
call fcn.005fc200
add esp, 4
test eax, eax
je 0x5e2cb4
mov edi, 0x2a
jmp case.0x5e22c5.1
movups xmm0, xmmword [esp + 0x40]
sub esp, 0x10
mov eax, esp
push esi
movups xmmword [eax], xmm0
call fcn.005fcf90
mov edi, eax
add esp, 0x14
test edi, edi
jne case.0x5e22c5.1
mov edx, dword [esi + 0x674]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x670]
movlpd qword [esp + 0x2c], xmm0
test edx, edx
jl 0x5e2d37
jg 0x5e2cf3
test ecx, ecx
je 0x5e2d37
movups xmm0, xmmword [esp + 0x40]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0xbc8]
push edx
push ecx
push dword [esi + 0xbdc]
movups xmmword [eax], xmm0
push dword [esi + 0xbd8]
push dword [esi + 0xb2c]
push dword [esi + 0xb28]
call fcn.005fbd30
add esp, 0x38
mov ebx, eax
mov ebp, edx
jmp 0x5e2d3f
mov ebp, dword [esp + 0x30]
mov ebx, dword [esp + 0x2c]
mov edx, dword [esi + 0x67c]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x678]
movlpd qword [esp + 0x24], xmm0
test edx, edx
jl 0x5e2da0
jg 0x5e2d5e
test ecx, ecx
je 0x5e2da0
movups xmm0, xmmword [esp + 0x40]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0xbe0]
push edx
push ecx
push dword [esi + 0xbf4]
movups xmmword [eax], xmm0
push dword [esi + 0xbf0]
push dword [esi + 0xb24]
push dword [esi + 0xb20]
call fcn.005fbd30
add esp, 0x38
mov ecx, eax
jmp 0x5e2da8
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
mov eax, ebx
or eax, ebp
jne 0x5e2ddc
mov eax, ecx
or eax, edx
jne 0x5e2ddc
cmp dword [esi + 0x24], 0xc
je 0x5e2dc1
mov dword [esi + 0x24], 0xc
movups xmm0, xmmword [esp + 0x40]
sub esp, 0x10
mov eax, esp
push esi
movups xmmword [eax], xmm0
call fcn.005fc3a0
add esp, 0x14
jmp case.0x5e22c5.1
cmp ebp, edx
jl 0x5e2df8
jg 0x5e2de6
cmp ebx, ecx
jb 0x5e2df8
push 0xa
push ebp
push ebx
push esi
call fcn.005e0870
add esp, 0x10
jmp case.0x5e22c5.1
push 0xa
push edx
push ecx
push esi
call fcn.005e0870
add esp, 0x10
jmp case.0x5e22c5.1
mov edx, dword [esi + 0x674]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x670]
mov dword [esp + 0x1c], 0
mov byte [esp + 0x17], 0
mov byte [esp + 0x14], 0
movlpd qword [esp + 0x2c], xmm0
test edx, edx
jl 0x5e2e7f
jg 0x5e2e3b
test ecx, ecx
je 0x5e2e7f
movups xmm0, xmmword [esp + 0x40]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0xbc8]
push edx
push ecx
push dword [esi + 0xbdc]
movups xmmword [eax], xmm0
push dword [esi + 0xbd8]
push dword [esi + 0xb2c]
push dword [esi + 0xb28]
call fcn.005fbd30
add esp, 0x38
mov ebx, eax
mov ebp, edx
jmp 0x5e2e87
mov ebp, dword [esp + 0x30]
mov ebx, dword [esp + 0x2c]
mov edx, dword [esi + 0x67c]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x678]
movlpd qword [esp + 0x24], xmm0
test edx, edx
jl 0x5e2eec
jg 0x5e2ea6
test ecx, ecx
je 0x5e2eec
movups xmm0, xmmword [esp + 0x40]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0xbe0]
push edx
push ecx
push dword [esi + 0xbf4]
movups xmmword [eax], xmm0
push dword [esi + 0xbf0]
push dword [esi + 0xb24]
push dword [esi + 0xb20]
call fcn.005fbd30
add esp, 0x38
mov dword [esp + 0x24], eax
mov ecx, eax
jmp 0x5e2ef8
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x24], ecx
mov eax, ebx
mov dword [esp + 0x2c], edx
or eax, ebp
jne 0x5e30e2
mov eax, ecx
or eax, edx
jne 0x5e30e2
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x17]
push eax
push esi
push dword [esi + 8]
call fcn.005f44a0
mov edi, eax
add esp, 0x10
mov al, byte [esp + 0x13]
test al, al
jne 0x5e2fdd
cmp edi, 0x38
je 0x5e2fdd
cmp edi, 0x5c
je 0x5e30ac
mov bl, byte [esp + 0x17]
test edi, edi
jne 0x5e30ac
test al, al
je 0x5e308f
push esi
call fcn.00530f40
add esp, 4
test bl, bl
jne 0x5e300e
cmp dword [esi + 0x140], edi
jne 0x5e3067
cmp dword [esi + 0x13c], edi
je 0x5e2901
push dword [esp + 0x1c]
call dword [0x6b7584]
mov eax, dword [esi + 0x13c]
push 1
push eax
push esi
mov dword [esp + 0x2c], eax
mov dword [esi + 0x13c], edi
call fcn.005f3e40
push dword [esp + 0x2c]
mov edi, eax
call dword [0x6b7584]
add esp, 0x14
test edi, edi
je 0x5e2901
push 1
push edi
push esi
mov byte [esp + 0x1d], 1
call fcn.005e1bc0
mov edi, eax
add esp, 0xc
test edi, edi
jne case.0x5e22c5.1
jmp 0x5e2901
lea eax, [esp + 0x1c]
push eax
push dword [esi + 8]
call fcn.005f47e0
add esp, 8
test eax, eax
jne 0x5e30a7
cmp dword [esp + 0x1c], eax
setne bl
test bl, bl
je 0x5e305e
push esi
mov byte [esp + 0x17], 1
call fcn.00530f40
add esp, 4
mov edi, 2
push 0
push 0
push esi
call fcn.005e1bc0
push edi
push dword [esp + 0x2c]
push esi
call fcn.005f3e40
mov edi, eax
add esp, 0x18
test edi, edi
jne 0x5e304f
cmp dword [esi + 0x24], 2
je 0x5e3047
push esi
mov dword [esi + 0x24], 2
call fcn.005f4100
add esp, 4
mov dword [esp + 0x18], 0xffffffff
push dword [esp + 0x1c]
call dword [0x6b7584]
jmp 0x5e323d
mov al, byte [esp + 0x13]
jmp 0x5e2f4a
push dword [esp + 0x1c]
call dword [0x6b7584]
mov eax, dword [esi + 0x140]
add esp, 4
mov dword [esp + 0x1c], eax
mov edi, 3
mov dword [esi + 0x140], 0
jmp 0x5e3013
cmp byte [esp + 0x14], 0
je case.0x5e22c5.1
mov dword [esp + 0x18], 0xffffffff
jmp case.0x5e22c5.1
test edi, edi
cmove edi, eax
mov ecx, dword [esi + 8]
mov eax, dword [ecx + 0x2e8]
test byte [eax + 0x44], 2
jne 0x5e30cb
cmp edi, 0x5c
je 0x5e30cb
push 2
push ecx
call fcn.005efa90
add esp, 8
push esi
call fcn.00530f40
push 1
push edi
push esi
call fcn.005e1bc0
add esp, 0x10
jmp case.0x5e22c5.1
movups xmm0, xmmword [esp + 0x40]
sub esp, 0x10
mov eax, esp
push esi
movups xmmword [eax], xmm0
call fcn.005fc3a0
add esp, 0x14
cmp dword [esi + 0x24], 0xd
je 0x5e3105
mov dword [esi + 0x24], 0xd
mov ecx, dword [esp + 0x2c]
cmp ebp, ecx
jl 0x5e3129
jg 0x5e3131
mov eax, dword [esp + 0x24]
cmp ebx, eax
jb 0x5e312d
push 0xa
push ebp
push ebx
push esi
call fcn.005e0870
add esp, 0x10
jmp case.0x5e22c5.1
mov eax, dword [esp + 0x24]
mov ebx, eax
mov ebp, ecx
push 0xa
push ebp
push ebx
push esi
call fcn.005e0870
add esp, 0x10
jmp case.0x5e22c5.1
mov eax, dword [esi + 8]
mov dword [esp + 0x18], 0xffffffff
test eax, eax
je 0x5e31e0
cmp byte [eax + 0x2bf], 0
je 0x5e31ac
mov eax, dword [esp + 0x3c]
add eax, 0x24
mov dword [esp + 0x2c], eax
mov ebp, dword [eax]
test ebp, ebp
je 0x5e31ac
mov ebx, dword [ebp]
cmp dword [ebx + 0x24], 2
je 0x5e318d
push ebx
mov dword [ebx + 0x24], 2
call fcn.005f4100
mov eax, dword [esp + 0x30]
add esp, 4
push 0
push ebp
push eax
call fcn.005f5a30
push 7
push 0
push 0
push ebx
call fcn.005e0870
add esp, 0x1c
mov byte [ebx + 0x1001], 1
push 0
push edi
push esi
call fcn.005e1bc0
mov ecx, dword [esi + 8]
add esp, 0xc
test edi, edi
cmove edi, eax
test ecx, ecx
je 0x5e31e0
push 0
lea eax, [esi + 0x18]
push eax
lea eax, [ecx + 0x370]
push eax
call fcn.005f5a30
add esp, 0xc
mov dword [esi + 8], 0
cmp byte [esi + 0xffb], 0
je 0x5e3201
cmp dword [esi + 0x1008], 7
je 0x5e3201
cmp dword [esi + 0x24], 0
je case.0x5e22c5.1
mov dword [esi + 0x24], 0
jmp case.0x5e22c5.1
cmp dword [esi + 0x24], 0xf
je case.0x5e22c5.1
mov eax, dword [esi + 0x78]
mov dword [esi + 0x24], 0xf
dec dword [eax + 0x10]
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x5e3230
push 0
lea eax, [esi + 0x18]
push eax
lea eax, [ecx + 0x370]
push eax
call fcn.005f5a30
add esp, 0xc
push esi
mov dword [esi + 8], 0
call fcn.005e0a80
add esp, 4
mov eax, dword [esi + 0x24]
lea ebx, [esi + 0x24]
cmp eax, 0xf
jge 0x5e33b1
lea ebx, [esi + 0x24]
test edi, edi
je 0x5e3344
mov ecx, dword [esp + 0x3c]
mov ecx, dword [ecx + 0x24]
mov dword [esp + 0x2c], ecx
test ecx, ecx
je 0x5e32b1
mov ebx, dword [ecx]
cmp dword [ebx + 0x24], 2
je 0x5e3285
push ebx
mov dword [ebx + 0x24], 2
call fcn.005f4100
mov ecx, dword [esp + 0x30]
add esp, 4
mov eax, dword [esp + 0x3c]
push 0
push ecx
add eax, 0x24
push eax
call fcn.005f5a30
push 7
push 0
push 0
push ebx
call fcn.005e0870
mov byte [ebx + 0x1001], 1
add esp, 0x1c
mov eax, dword [esi + 0x24]
lea ebx, [esi + 0x24]
mov ebp, dword [esi + 8]
test ebp, ebp
je 0x5e32f0
cmp byte [esp + 0x11], 0
je 0x5e3301
push 0
lea eax, [esi + 0x18]
cmp edi, 0x1c
push eax
lea eax, [ebp + 0x370]
sete byte [esp + 0x3c]
push eax
call fcn.005f5a30
push dword [esp + 0x40]
mov dword [esi + 8], 0
push ebp
push esi
call fcn.005ea920
add esp, 0x18
jmp 0x5e3301
cmp eax, 2
jne 0x5e3301
push esi
call fcn.00530f40
add esp, 4
lea ebx, [esi + 0x24]
cmp dword [ebx], 0xf
je 0x5e33a9
mov eax, dword [esi + 0x78]
mov dword [ebx], 0xf
dec dword [eax + 0x10]
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x5e3332
push 0
lea eax, [esi + 0x18]
push eax
lea eax, [ecx + 0x370]
push eax
call fcn.005f5a30
add esp, 0xc
push esi
mov dword [esi + 8], 0
call fcn.005e0a80
add esp, 4
jmp 0x5e33a9
mov eax, dword [esi + 8]
test eax, eax
je 0x5e33b1
push eax
lea ebx, [esi + 0x24]
call fcn.005fc200
add esp, 4
test eax, eax
je 0x5e33b1
push 2
push dword [esi + 8]
mov edi, 0x2a
call fcn.005efa90
mov ecx, dword [esi + 0x24]
xor eax, eax
add esp, 8
cmp ecx, 0xe
setge al
add eax, 0xe
cmp ecx, eax
je 0x5e33a6
mov dword [esi + 0x24], eax
cmp ecx, 0xe
jl 0x5e338d
mov eax, dword [esi + 0x78]
dec dword [eax + 0x10]
xor eax, eax
cmp ecx, 0xe
setge al
mov eax, dword [eax*4 + 0x663428]
test eax, eax
je 0x5e33a6
push esi
call eax
add esp, 4
lea ebx, [esi + 0x24]
mov dword [esp + 0x18], 0xffffffff
cmp dword [ebx], 0xf
mov ebp, ebx
jne 0x5e3405
mov eax, dword [esi + 0xa9c]
test eax, eax
je 0x5e33cb
push edi
push esi
call eax
add esp, 8
jmp 0x5e33f8
lea eax, [esi + 0x2c]
mov dword [eax + 0xc], 1
push eax
push eax
mov dword [eax + 0x10], esi
mov dword [eax + 0x14], edi
mov eax, dword [esp + 0x44]
push dword [eax + 0x18]
add eax, 0x14
push eax
call fcn.005f59b0
add esp, 0x10
mov dword [esp + 0x18], 0
cmp dword [ebx], 0x10
mov ebp, ebx
je 0x5e3405
mov dword [ebx], 0x10
mov ecx, dword [esp + 0x18]
cmp ecx, 0xffffffff
je 0x5e20b7
mov eax, dword [esp + 0x3c]
mov al, byte [eax + 0x79]
test al, al
jne 0x5e20b7
mov dword [esi + 0x28], edi
mov eax, ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret
push eax
push str.In_state__d_with_no_conn__bail_out__n
push esi
call fcn.005eefe0
add esp, 0xc
mov eax, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret
mov dword [esi + 0x28], edi
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret
pop edi
pop esi
pop ebp
mov eax, 2
pop ebx
add esp, 0x28
ret