Function at 0x5608e4
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xfb0
cmp dword [ecx + 0xf8], 2
mov edi, ecx
je 0x56349e
lea ecx, [edi + 0xf8]
mov esi, edx
mov dword [esp + 0x118], ecx
call fcn.0054fc3d
test al, al
je 0x56349e
mov al, byte [edi + 0x91]
lea ebx, [esp + 0x200]
mov dword [esp + 0x11c], esi
mov dword [esp + 0xc], edi
mov byte [esp + 0x7d], al
mov al, byte [edi + 0x92]
mov byte [esp + 0x3f], al
mov al, byte [edi + 0x94]
mov byte [esp + 0x63], al
mov al, byte [edi + 0x95]
mov byte [esp + 0x37], al
mov al, byte [edi + 0x96]
mov byte [esp + 0x7e], al
mov al, byte [edi + 0x98]
mov byte [esp + 0x7f], al
lea eax, [edi + 0xa0]
mov dword [esp + 0x174], eax
lea eax, [edi + 0xe0]
mov dword [esp + 0xcc], eax
lea eax, [edi + 8]
mov dword [esp + 0x170], eax
mov dword [esp + 0x6c], eax
cmp dword [edi + 0xe4], 0
je 0x560a59
mov eax, dword [0x802150]
mov dword [esp + 0x208], 2
mov ecx, ebx
lea edx, [esp + 0x968]
mov dword [esp + 0x968], 0x7f59e0
mov dword [esp + 0x96c], 0
mov dword [esp + 0x218], eax
add eax, 0x1c
mov dword [esp + 0x970], eax
call fcn.0060ba02
movsd xmm1, qword [esp + 0x208]
movq xmm0, qword [esp + 0x200]
movsd xmm2, qword [esp + 0x210]
movsd qword [esp + 0x1a8], xmm1
movsd xmm1, qword [esp + 0x218]
movq qword [esp + 0x1a0], xmm0
movsd qword [esp + 0x1b0], xmm2
movsd qword [esp + 0x1b8], xmm1
mov eax, dword [esp + 0x1a8]
cmp eax, 2
je 0x560a7d
test eax, eax
je 0x560a60
mov eax, dword [esp + 0x1b0]
mov ecx, dword [esp + 0x1ac]
mov edx, dword [eax + 8]
dec edx
and edx, 0xfffffff8
lea ecx, [edx + ecx + 8]
jmp 0x560a6e
xor eax, eax
jmp 0x562d4a
mov ecx, dword [esp + 0x1ac]
mov eax, dword [esp + 0x1b0]
lea edx, [esp + 0x1a0]
push edx
push ecx
call dword [eax + 0x30]
add esp, 8
mov esi, dword [edi + 0xe4]
test esi, esi
je 0x562e6e
mov edi, dword [edi + 0xe0]
xor eax, eax
movzx ecx, byte [edi + eax]
cmp ecx, 0xa
je 0x560abc
cmp ecx, 0xd
jne 0x560ac6
lea ecx, [eax + 1]
cmp ecx, esi
jae 0x562cb7
cmp byte [edi + eax + 1], 0xa
jne 0x562ccd
add eax, 2
jmp 0x560abd
inc eax
cmp eax, esi
jb 0x560a93
jmp 0x562cb7
mov edx, esi
lea ebx, [edi + eax]
mov dword [esp + 0x1c], 3
sub edx, eax
cmp edx, 8
jae 0x560b8c
cmp esi, eax
mov dword [esp + 0x14], 0
je 0x562e8b
mov edi, dword [esp + 0xc]
mov eax, 6
cmp cl, 0x48
jne 0x561812
cmp edx, 2
jb 0x562e8f
cmp byte [ebx + 1], 0x54
jne 0x561812
mov ecx, ebx
cmp edx, 3
lea ebx, [esp + 0x200]
jb 0x562cf3
cmp byte [ecx + 2], 0x54
jne 0x561819
cmp edx, 4
jb 0x562cf3
cmp byte [ecx + 3], 0x50
jne 0x561819
cmp edx, 5
jb 0x562cf3
cmp byte [ecx + 4], 0x2f
jne 0x561819
cmp edx, 6
jb 0x562cf3
cmp byte [ecx + 5], 0x31
jne 0x561819
cmp edx, 7
jb 0x562cf3
xor eax, eax
cmp byte [ecx + 6], 0x2e
mov ecx, 6
cmove ecx, eax
mov eax, ecx
jne 0x561819
jmp 0x562e76
movq xmm0, qword [ebx]
movdqa xmmword [esp + 0x160], xmm0
cmp byte [esp + 0x160], 0x48
jne 0x561599
cmp byte [esp + 0x161], 0x54
mov ecx, ebx
lea ebx, [esp + 0x200]
jne 0x560c9e
cmp byte [esp + 0x162], 0x54
jne 0x560c9e
cmp byte [esp + 0x163], 0x50
jne 0x560c9e
cmp byte [esp + 0x164], 0x2f
jne 0x560c9e
cmp byte [esp + 0x165], 0x31
jne 0x560c9e
cmp byte [esp + 0x166], 0x2e
jne 0x560c9e
mov dword [esp + 0x10], ecx
pextrw ecx, xmm0, 3
shr ecx, 8
cmp cl, 0x30
je 0x560c22
cmp ecx, 0x31
jne 0x560c9e
mov cl, 2
jmp 0x560c24
mov cl, 1
mov dword [esp + 0xc8], ecx
mov ecx, dword [esp + 0x10]
cmp edx, 9
mov dword [esp + 0x14], 0
jb 0x562cc7
cmp byte [ecx + 8], 0x20
jne 0x560c9e
add ecx, 9
cmp byte [esp + 0x63], 0
mov dword [esp + 0x10], ecx
lea ecx, [edx - 9]
mov dword [esp + 0x18], ecx
je 0x560cac
cmp edx, 9
je 0x562cc7
mov ebx, dword [esp + 0x10]
xor ecx, ecx
cmp byte [ebx], 0x20
jne 0x560c8b
lea eax, [edi + eax + 0xa]
add edx, 0xfffffff6
xor ebx, ebx
cmp edx, ebx
je 0x562e83
cmp byte [eax + ebx], 0x20
lea ecx, [ebx + 1]
mov ebx, ecx
je 0x560c78
mov edx, dword [esp + 0x18]
add dword [esp + 0x10], ecx
lea ebx, [esp + 0x200]
sub edx, ecx
jmp 0x560cb0
mov edi, dword [esp + 0xc]
mov eax, 6
jmp 0x561819
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
test edx, edx
je 0x562cc7
mov cl, byte [eax]
add cl, 0xd0
cmp cl, 9
ja 0x562fcb
cmp edx, 2
jb 0x56301c
mov eax, dword [esp + 0x10]
mov ch, byte [eax + 1]
add ch, 0xd0
cmp ch, 9
ja 0x562fcb
cmp edx, 3
jb 0x56301c
mov eax, dword [esp + 0x10]
mov al, byte [eax + 2]
add al, 0xd0
cmp al, 0xa
jae 0x562fcb
cmp edx, 4
jb 0x56301c
mov byte [esp + 0x30], al
mov eax, dword [esp + 0x10]
movzx eax, byte [eax + 3]
cmp eax, 0xa
je 0x560da8
cmp eax, 0xd
je 0x560db2
cmp eax, 0x20
jne 0x562fcb
cmp byte [esp + 0x63], 0
je 0x561506
cmp edx, 5
mov dword [esp + 0x1c], 3
mov dword [esp + 0x18], edx
jb 0x562cc7
mov eax, dword [esp + 0x10]
mov edx, 4
cmp byte [eax + 4], 0x20
jne 0x560d8e
mov eax, dword [esp + 0x18]
mov ebx, 4
neg eax
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x2c]
lea edx, [eax + ebx]
cmp edx, 0xffffffff
je 0x562e8b
mov eax, dword [esp + 0x10]
lea edx, [ebx + 1]
cmp byte [eax + ebx + 1], 0x20
mov ebx, edx
je 0x560d6e
mov eax, dword [esp + 0x18]
add dword [esp + 0x10], edx
lea ebx, [esp + 0x200]
sub eax, edx
mov edx, eax
xor eax, eax
jmp 0x56150b
add dword [esp + 0x10], 4
add edx, 0xfffffffc
jmp 0x560dd3
cmp edx, 4
jbe 0x56301c
mov eax, dword [esp + 0x10]
cmp byte [eax + 4], 0xa
jne 0x562fcb
add eax, 5
add edx, 0xfffffffb
mov dword [esp + 0x10], eax
mov eax, 0x7f59e0
mov dword [esp + 0x38], 0
test edx, edx
mov dword [esp + 0x1c], 3
je 0x562cc7
mov dword [esp + 0x78], eax
movzx eax, cl
movzx ecx, ch
mov dword [esp + 0x40], 0
imul eax, eax, 0x64
add ecx, ecx
mov dword [esp + 0x14], eax
mov eax, edx
lea edx, [ecx + ecx*4]
movzx ecx, byte [esp + 0x30]
sub esi, eax
add ecx, dword [esp + 0x14]
add ecx, edx
mov edx, eax
xor eax, eax
and ecx, 0x3ff
mov dword [esp + 0xc4], ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x30], eax
shl eax, 4
mov dword [esp + 0x18], edx
lea eax, [esp + eax + 0x200]
mov dword [esp + 0xe0], eax
mov eax, ecx
movzx edx, byte [eax]
cmp edx, 0xa
je 0x561660
cmp edx, 0xd
je 0x561667
cmp byte [edx + 0x764574], 0
je 0x560fd9
mov edx, dword [esp + 0x18]
mov dword [esp + 0x44], eax
add eax, 2
mov dword [esp + 0x14], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x20], eax
lea ecx, [edx - 1]
lea eax, [edx - 2]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x5c], ebx
mov ebx, eax
mov eax, edx
lea eax, [edx + 1]
mov dword [esp + 0x10], edx
cmp dword [esp + 0x18], eax
jbe 0x562e8b
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x10]
dec ecx
movzx edx, byte [eax + edx + 1]
mov eax, dword [esp + 0x5c]
cmp byte [edx + 0x764574], 0
lea eax, [eax + 1]
mov dword [esp + 0x20], eax
lea eax, [ebx - 1]
jne 0x560e94
mov eax, dword [esp + 0x10]
mov dword [esp + 0x74], ebx
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x44]
add eax, 2
add dword [esp + 0x40], eax
sub ecx, eax
add eax, ebx
cmp dl, 0x3a
mov dword [esp + 0x70], ecx
mov dword [esp + 0x20], eax
jne 0x561016
mov eax, dword [esp + 0x40]
lea ebx, [esp + 0x200]
mov edx, dword [esp + 0x70]
mov dword [esp + 0x40], eax
test edx, edx
je 0x562cc7
mov eax, dword [esp + 0x20]
mov dword [esp + 0x18], edx
mov cl, byte [eax]
xor eax, eax
lea edx, [eax + 1]
cmp cl, 0x20
mov dword [esp + 0x10], edx
je 0x560fb4
movzx edx, cl
cmp edx, 9
je 0x560fb4
cmp byte [edx + 0x75155b], 0
jne 0x5610cd
cmp cl, 0xa
je 0x560f82
cmp edx, 0xd
jne 0x561325
mov edx, dword [esp + 0x18]
cmp edx, dword [esp + 0x10]
jbe 0x562cbf
mov ecx, dword [esp + 0x20]
cmp byte [ecx + eax + 1], 0xa
jne 0x5617cc
add eax, 2
jmp 0x560f8a
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
cmp byte [esp + 0x3f], 0
je 0x56143f
cmp eax, edx
jae 0x562cbf
mov ecx, dword [esp + 0x20]
movzx ecx, byte [ecx + eax]
cmp ecx, 9
je 0x560f31
cmp ecx, 0x20
je 0x560f31
jmp 0x56143f
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x14], 0
add dword [esp + 0x40], eax
add dword [esp + 0x20], eax
sub edx, eax
jne 0x560f25
jmp 0x562cc7
cmp byte [esp + 0x37], 0
je 0x561583
mov ecx, eax
xor eax, eax
inc eax
test dl, dl
je 0x561583
movzx edx, dl
cmp edx, 0xa
je 0x561095
cmp edx, 0xd
je 0x56109b
cmp dword [esp + 0x18], eax
jbe 0x562cbf
mov dl, byte [ecx + eax]
inc eax
jmp 0x560fe9
cmp byte [esp + 0x7d], 0
mov eax, edx
lea ebx, [esp + 0x200]
je 0x5612ce
mov edx, eax
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x2c]
lea eax, [eax + ecx + 1]
xor ecx, ecx
mov dword [esp + 0xe4], eax
mov eax, edx
mov edx, dword [esp + 0x10]
sub edx, dword [esp + 0x18]
mov dword [esp + 0x10], edx
cmp al, 0x20
je 0x561067
mov edx, eax
movzx eax, dl
cmp eax, 9
mov eax, edx
mov edx, dword [esp + 0x10]
jne 0x5612d0
lea eax, [edx + ecx]
cmp eax, 0xfffffffe
je 0x562cbf
mov eax, dword [esp + 0xe4]
mov al, byte [eax + ecx]
inc ecx
cmp al, 0x3a
jne 0x56104f
mov eax, dword [esp + 0x40]
add dword [esp + 0x20], ecx
sub dword [esp + 0x70], ecx
add eax, ecx
jmp 0x560f15
mov edx, dword [esp + 0x18]
jmp 0x5610b2
mov edx, dword [esp + 0x18]
cmp edx, eax
jbe 0x562cbf
cmp byte [ecx + eax], 0xa
jne 0x561583
inc eax
add dword [esp + 0x40], eax
add ecx, eax
sub edx, eax
mov eax, ecx
test edx, edx
mov dword [esp + 0x18], edx
jne 0x560e4d
jmp 0x562cbf
mov ecx, dword [0x803230]
mov edx, dword [esp + 0x18]
test ecx, ecx
jne 0x5610ff
mov eax, dword [0x803310]
test eax, eax
je 0x56121d
xor ecx, ecx
bt eax, 0xb
mov eax, 0xffffffff
jae 0x5610fa
xor ecx, ecx
inc ecx
mov eax, ecx
mov dword [0x803230], eax
cmp ecx, 1
jne 0x56113b
mov ecx, dword [esp + 0x10]
mov eax, edx
sub eax, ecx
jb 0x563a03
cmp eax, 0x10
jb 0x56113f
mov dword [esp + 0x10], ecx
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x10]
add ecx, eax
call fcn.004cae43
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
add ecx, eax
cmp eax, 0x10
je 0x561108
jmp 0x56113f
mov ecx, dword [esp + 0x10]
cmp ecx, edx
cmova edx, ecx
cmp ecx, 0xfffffff7
ja 0x561152
lea eax, [ecx + 8]
cmp eax, dword [esp + 0x18]
jbe 0x561171
cmp edx, ecx
je 0x562cbf
mov eax, dword [esp + 0x20]
movzx eax, byte [eax + ecx]
inc ecx
cmp byte [eax + 0x75155b], 0
jne 0x561144
jmp 0x561253
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x20]
movq xmm0, qword [eax + ecx]
movdqa xmmword [esp + 0x1d0], xmm0
movzx eax, byte [esp + 0x1d0]
cmp byte [eax + 0x75155b], 0
je 0x56122b
movd edx, xmm0
mov eax, edx
shr eax, 8
movzx ebx, al
cmp byte [ebx + 0x75155b], 0
je 0x56122e
mov eax, edx
shr eax, 0x10
movzx ebx, al
cmp byte [ebx + 0x75155b], 0
je 0x561233
shr edx, 0x18
lea ebx, [esp + 0x200]
cmp byte [edx + 0x75155b], 0
je 0x56123f
pextrw eax, xmm0, 2
movzx edx, al
cmp byte [edx + 0x75155b], 0
je 0x561246
shr eax, 8
cmp byte [eax + 0x75155b], 0
je 0x56124b
pextrw eax, xmm0, 3
movzx edx, al
cmp byte [edx + 0x75155b], 0
je 0x561250
shr eax, 8
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
cmp byte [eax + 0x75155b], 0
jne 0x56113f
jmp 0x561253
call fcn.0065a400
mov edx, dword [esp + 0x18]
jmp 0x5610e8
inc ecx
jmp 0x561236
add ecx, 2
jmp 0x561236
add ecx, 3
lea ebx, [esp + 0x200]
jmp 0x561253
add ecx, 4
mov eax, edx
jmp 0x561253
add ecx, 5
jmp 0x561253
add ecx, 6
jmp 0x561253
add ecx, 7
cmp al, 0xa
je 0x56128f
mov dword [esp + 0x10], ecx
movzx ecx, al
cmp ecx, 0xd
mov ecx, dword [esp + 0x18]
jne 0x5613bf
mov eax, dword [esp + 0x10]
cmp ecx, eax
jbe 0x562cbf
mov edx, dword [esp + 0x20]
mov ecx, eax
cmp byte [edx + ecx], 0xa
jne 0x5617cc
inc ecx
mov edx, 0xfffffffe
jmp 0x561292
xor edx, edx
dec edx
cmp byte [esp + 0x3f], 0
mov dword [esp + 0x10], ecx
je 0x561497
mov ecx, dword [esp + 0x10]
cmp ecx, dword [esp + 0x18]
jae 0x562cbf
mov eax, dword [esp + 0x20]
movzx eax, byte [eax + ecx]
cmp eax, 9
je 0x5610cd
cmp eax, 0x20
je 0x5610cd
jmp 0x561497
xor ecx, ecx
cmp byte [esp + 0x37], 0
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x18], eax
je 0x561583
mov eax, dword [esp + 0x74]
add edx, ecx
mov dword [esp + 0x14], ecx
cmp ecx, eax
mov ecx, dword [esp + 0x14]
cmova eax, dword [esp + 0x14]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x18]
test al, al
je 0x561583
movzx eax, al
cmp eax, 0xa
je 0x561380
cmp eax, 0xd
je 0x561367
cmp dword [esp + 0x74], ecx
je 0x562cbf
mov al, byte [edx]
inc ecx
inc edx
jmp 0x561300
cmp byte [esp + 0x37], 0
je 0x5617cc
test cl, cl
je 0x5617cc
movzx eax, cl
cmp eax, 0xa
je 0x56140f
mov ecx, dword [esp + 0x10]
cmp eax, 0xd
je 0x561395
cmp dword [esp + 0x18], ecx
jbe 0x562cbf
mov eax, dword [esp + 0x20]
mov edx, ecx
inc edx
mov dword [esp + 0x10], edx
mov cl, byte [eax + ecx]
jmp 0x561330
cmp dword [esp + 0x70], ecx
jbe 0x562cbf
mov eax, dword [esp + 0x20]
cmp byte [eax + ecx], 0xa
jne 0x561583
inc ecx
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x70]
add dword [esp + 0x40], ecx
add eax, ecx
sub edx, ecx
jmp 0x5610bc
cmp dword [esp + 0x18], ecx
jbe 0x562e83
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x10]
cmp byte [eax + ecx], 0xa
jne 0x5617fe
mov ecx, dword [esp + 0x10]
lea ebx, [esp + 0x200]
inc ecx
jmp 0x561413
cmp byte [esp + 0x37], 0
je 0x5617fe
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
cmp edx, ecx
cmova ecx, edx
test al, al
je 0x5617fe
movzx eax, al
cmp eax, 0xa
je 0x561408
cmp eax, 0xd
je 0x56142c
cmp ecx, dword [esp + 0x10]
je 0x562e83
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
mov al, byte [eax + edx]
inc edx
mov dword [esp + 0x10], edx
jmp 0x5613d7
lea ebx, [esp + 0x200]
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x20]
add dword [esp + 0x40], ecx
add eax, ecx
sub dword [esp + 0x18], ecx
jne 0x560e4d
jmp 0x562cbf
mov eax, dword [esp + 0x10]
cmp dword [esp + 0x18], eax
ja 0x56139f
jmp 0x562e83
cmp dword [esp + 0x30], 0x64
mov dword [esp + 0x14], 0
je 0x56315e
mov ecx, dword [esp + 0xe0]
mov edx, dword [esp + 0x44]
inc dword [esp + 0x30]
add dword [esp + 0x40], eax
mov dword [ecx], edx
mov edx, dword [esp + 0x2c]
mov dword [ecx + 4], edx
mov edx, dword [esp + 0x20]
mov dword [ecx + 8], edx
mov edx, dword [esp + 0x14]
mov dword [ecx + 0xc], edx
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
add ecx, eax
sub edx, eax
mov eax, dword [esp + 0x30]
jne 0x560e32
jmp 0x562cbf
cmp dword [esp + 0x30], 0x64
je 0x563182
add edx, dword [esp + 0x10]
je 0x5614dc
mov ecx, edx
mov ebx, 0x800013
mov eax, dword [esp + 0x20]
movzx eax, byte [eax + ecx - 1]
add eax, 0xfffffff7
cmp eax, 0x17
ja 0x5614ea
bt ebx, eax
jae 0x5614ea
dec ecx
jne 0x5614af
mov eax, dword [esp + 0x10]
lea ebx, [esp + 0x200]
mov dword [esp + 0x14], edx
jmp 0x561452
mov eax, dword [esp + 0x10]
mov dword [esp + 0x14], 0
jmp 0x5614fa
cmp ecx, edx
ja 0x563a0d
mov eax, dword [esp + 0x10]
mov dword [esp + 0x14], ecx
lea ebx, [esp + 0x200]
jmp 0x561452
mov eax, 4
sub edx, eax
mov byte [esp + 0x2c], ch
mov dword [esp + 0x1c], 3
mov dword [esp + 0x18], edx
je 0x562cc7
add dword [esp + 0x10], eax
xor eax, eax
xor edx, edx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x38], edx
mov ch, byte [ebx + edx]
inc edx
movzx ebx, ch
cmp ebx, 0xc
jg 0x56154b
cmp ebx, 9
je 0x56156b
cmp ebx, 0xa
jne 0x561559
jmp 0x5615a9
cmp ebx, 0x20
je 0x56156b
cmp ebx, 0xd
je 0x5615e7
test ch, ch
js 0x56156b
mov bl, ch
add bl, 0xdf
cmp bl, 0x5d
ja 0x56307d
test ch, ch
movzx eax, al
mov ebx, 1
cmovs eax, ebx
cmp dword [esp + 0x18], edx
jne 0x56152b
jmp 0x562e83
mov eax, dword [esp + 0x28]
and eax, 0xffffff00
mov edi, dword [esp + 0xc]
mov dword [esp + 0x28], eax
jmp 0x561819
mov edi, dword [esp + 0xc]
lea ebx, [esp + 0x200]
jmp 0x560ca2
sub dword [esp + 0x18], edx
test al, 1
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x38]
mov ch, byte [esp + 0x2c]
lea edx, [eax + edx]
mov dword [esp + 0x20], edx
mov edx, 0x7f59e0
cmovne eax, edx
mov edx, 0
cmovne ebx, edx
mov dword [esp + 0x38], ebx
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x10], ebx
lea ebx, [esp + 0x200]
jmp 0x56164f
cmp dword [esp + 0x18], edx
jbe 0x562e83
mov ebx, dword [esp + 0x10]
mov ch, byte [esp + 0x2c]
cmp byte [ebx + edx], 0xa
lea ebx, [esp + 0x200]
jne 0x562fcb
mov edx, dword [esp + 0x38]
add edx, 2
sub dword [esp + 0x18], edx
test al, 1
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x38]
lea eax, [edx + eax + 2]
mov dword [esp + 0x78], edx
mov edx, 0x7f59e0
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x78]
cmovne eax, edx
mov edx, 0
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x38]
cmovne eax, edx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0x18]
test eax, eax
jne 0x560de0
jmp 0x562cbf
mov edx, dword [esp + 0x40]
inc edx
jmp 0x561683
cmp dword [esp + 0x18], 2
jb 0x562cbf
cmp byte [eax + 1], 0xa
jne 0x5617dd
mov edx, dword [esp + 0x40]
add edx, 2
mov ecx, dword [esp + 0xc4]
mov eax, edx
movzx edx, dl
mov dword [esp + 0x1c], 4
and eax, 0xffffff00
or edx, eax
mov dword [esp + 0x28], edx
movzx eax, cx
add eax, 0xfffffc18
movzx eax, ax
cmp eax, 0xfc7c
jb 0x563170
call fcn.004c9250
mov ebx, dword [esp + 0x38]
test eax, eax
je 0x5616e2
cmp ebx, edx
jne 0x5616e2
push ebx
push eax
push dword [esp + 0x80]
call fcn.0064aeea
add esp, 0xc
test eax, eax
je 0x5617ee
mov ecx, ebx
xor edx, edx
call fcn.004a2669
mov ecx, ebx
mov dword [esp + 0x38], ebx
mov ebx, eax
mov dword [esp + 0x14], edx
push ecx
push dword [esp + 0x7c]
push eax
call fcn.0064a810
add esp, 0xc
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x120], ebx
lea edx, [esp + 0x120]
mov dword [esp + 0x124], eax
mov dword [esp + 0x128], ecx
lea ecx, [esp + 0x80]
call fcn.004a294d
mov ecx, dword [esp + 0x30]
mov eax, 0x64
cmp ecx, 0x64
cmovb eax, ecx
test eax, eax
je 0x5617a0
shl eax, 4
xor ecx, ecx
mov edx, dword [esp + ecx + 0x204]
cmp edx, 0xffff
ja 0x563108
mov ebx, dword [esp + ecx + 0x200]
sub ebx, edi
add edx, ebx
mov dword [esp + ecx + 0x968], ebx
mov ebx, dword [esp + ecx + 0x208]
mov dword [esp + ecx + 0x96c], edx
mov edx, dword [esp + ecx + 0x20c]
sub ebx, edi
add edx, ebx
mov dword [esp + ecx + 0x970], ebx
mov dword [esp + ecx + 0x974], edx
add ecx, 0x10
cmp eax, ecx
jne 0x56174d
lea ecx, [esp + 0x84]
add esi, dword [esp + 0x28]
mov eax, dword [esp + 0x80]
mov edi, dword [esp + 0xc]
movq xmm0, qword [ecx]
mov ecx, dword [ecx + 8]
movq qword [esp + 0x48], xmm0
mov dword [esp + 0x50], ecx
jmp 0x56184e
mov eax, dword [esp + 0x28]
and eax, 0xffffff00
or eax, 1
jmp 0x56158c
mov eax, dword [esp + 0x28]
and eax, 0xffffff00
or eax, 2
jmp 0x56158c
mov dword [esp + 0x80], 0
jmp 0x561735
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0xc]
and eax, 0xffffff00
or eax, 1
mov dword [esp + 0x28], eax
lea ebx, [esp + 0x200]
cmp al, 6
jne 0x562cd6
cmp byte [esp + 0x7f], 0
je 0x562cd6
mov ax, 0xc8
xor esi, esi
mov dword [esp + 0xc8], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0xc4], eax
xor eax, eax
mov edx, dword [esp + 0x50]
lea ecx, [esp + 0xec]
movq xmm0, qword [esp + 0x48]
mov dword [esp + 0xe8], eax
mov dword [ecx + 8], edx
mov edx, dword [esp + 0xcc]
movq qword [ecx], xmm0
lea ecx, [esp + 0x180]
push esi
call fcn.004a2dca
add esp, 4
cmp byte [esp + 0x3f], 0
je 0x561900
mov ecx, dword [esp + 0x30]
cmp ecx, 0x65
jae 0x5638a5
mov eax, dword [esp + 0x180]
mov edx, dword [esp + 0x184]
test ecx, ecx
mov dword [esp + 0x1c], eax
je 0x5618fa
mov eax, ecx
lea ebx, [esp + 0x968]
shl eax, 4
lea edi, [esp + eax + 0x968]
mov ecx, dword [ebx + 8]
mov eax, dword [ebx + 0xc]
cmp eax, ecx
jb 0x563813
cmp eax, edx
ja 0x56381c
sub eax, ecx
je 0x5618f3
add ecx, dword [esp + 0x1c]
movzx esi, byte [ecx]
cmp esi, 0xd
je 0x5618ec
cmp esi, 0xa
jne 0x5618ef
mov byte [ecx], 0x20
inc ecx
dec eax
jne 0x5618df
add ebx, 0x10
cmp ebx, edi
jne 0x5618c1
mov edi, dword [esp + 0xc]
jmp 0x561912
mov eax, dword [esp + 0x180]
mov edx, dword [esp + 0x184]
mov dword [esp + 0x1c], eax
mov ebx, dword [esp + 0x18c]
test bl, 1
jne 0x561944
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], edx
mov dword [esp + 0xdc], ebx
mov dword [esp + 0xd0], 0x7cb758
jmp 0x5619be
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x188]
shr ebx, 5
add edx, ebx
sub ecx, ebx
add eax, ebx
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], edx
lea ecx, [esp + 0x120]
lea edx, [esp + 0x48]
call fcn.004a294d
mov eax, dword [esp + 0x128]
mov dword [esp + 0xf8], ebx
mov ecx, eax
sub ecx, ebx
jb 0x5638c2
mov dword [esp + 0x128], ecx
add dword [esp + 0x124], ebx
movq xmm0, qword [esp + 0x120]
movsd xmm1, qword [esp + 0x128]
movq qword [esp + 0xd0], xmm0
movsd qword [esp + 0xd8], xmm1
mov eax, dword [edi]
mov edx, dword [edi + 4]
lea ebx, [esp + 0x200]
mov dword [edi], 3
mov dword [edi + 4], 0
mov ecx, eax
xor ecx, 3
or ecx, edx
jne 0x561a31
xor eax, eax
mov ecx, 4
mov word [esp + 0x158], 0
mov dword [esp + 0x138], 2
xor edx, edx
mov dword [esp + 0x13c], eax
mov dword [esp + 0x140], ecx
mov dword [esp + 0x144], eax
mov dword [esp + 0x148], eax
mov dword [esp + 0x14c], ecx
mov dword [esp + 0x150], eax
mov dword [esp + 0x154], eax
jmp 0x561a46
mov esi, dword [esp + 0x170]
mov ecx, 0xe
lea edi, [esp + 0x128]
rep movsd dword es:[edi], dword [esi]
cmp byte [esp + 0xc8], 2
mov dword [esp + 0x120], eax
mov dword [esp + 0x124], edx
sete byte [esp + 0x70]
cmp byte [esp + 0x7e], 0
je 0x561ab9
xor eax, eax
mov ecx, 4
mov dword [esp + 0x98], 2
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], ecx
xor ecx, ecx
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], eax
mov word [esp + 0xb8], 0
jmp 0x561ac0
xor ecx, ecx
mov eax, 3
mov edi, dword [esp + 0x148]
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x80], eax
mov eax, edi
add eax, ecx
jb 0x563871
mov esi, dword [esp + 0x13c]
cmp eax, esi
mov edx, esi
mov dword [esp + 0x20], esi
jbe 0x561e1d
lea ecx, [eax - 1]
mov dword [esp + 0x5c], edi
bsr ecx, ecx
xor edi, edi
dec edi
not ecx
shr edi, cl
mov ecx, 1
inc edi
cmp eax, 2
cmovb edi, ecx
cmp edi, 0x8001
jae 0x56392b
mov ecx, dword [esp + 0x20]
test edi, edi
je 0x5638b1
cmp dword [esp + 0x5c], 0
je 0x561b9d
mov esi, dword [esp + 0x138]
test ecx, ecx
mov dword [esp + 0x2c], esi
je 0x561b90
movzx eax, word [esp + 0x158]
lea ecx, [ecx*4]
xor edx, edx
movzx eax, ax
mov dword [esp + 0x1c], eax
cmp word [esi + edx*4], 0xffff
je 0x561b8a
mov eax, dword [esp + 0x1c]
mov ebx, edx
movzx edx, word [esi + edx*4 + 2]
mov esi, eax
and esi, edx
mov edx, ebx
sub edx, esi
mov esi, dword [esp + 0x2c]
test edx, eax
mov edx, ebx
lea ebx, [esp + 0x200]
je 0x561c2e
inc edx
add ecx, 0xfffffffc
jne 0x561b5b
mov dword [esp + 0x44], 0
jmp 0x561c32
lea eax, [edi - 1]
mov ecx, edi
mov word [esp + 0x158], ax
call fcn.004c5953
mov dword [esp + 0x200], eax
mov dword [esp + 0x204], edx
mov ecx, ebx
mov edx, edi
mov dword [esp + 0x208], 0
mov ebx, edi
call fcn.004c58ff
mov eax, dword [esp + 0x208]
movq xmm0, qword [esp + 0x200]
lea ecx, [esp + 0x48]
mov dword [esp + 0x50], eax
movq qword [esp + 0x48], xmm0
call fcn.0049abff
mov esi, dword [esp + 0x48]
mov edi, dword [esp + 0x50]
cmp dword [esp + 0x20], 0
je 0x561da6
push dword [esp + 0x138]
push 0
push dword [0x8032a8]
call dword [sym.imp.kernel32.dll_HeapFree]
mov eax, dword [esp + 0x148]
mov dword [esp + 0x1c], eax
jmp 0x561dae
mov dword [esp + 0x44], edx
mov ecx, edi
call fcn.004c5953
mov dword [esp + 0x200], eax
mov dword [esp + 0x204], edx
mov ecx, ebx
mov edx, edi
mov dword [esp + 0x208], 0
call fcn.004c58ff
mov eax, dword [esp + 0x208]
movq xmm0, qword [esp + 0x200]
lea ecx, [esp + 0x48]
mov dword [esp + 0x50], eax
movq qword [esp + 0x48], xmm0
call fcn.0049abff
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x48]
dec edi
mov edx, dword [esp + 0x50]
cmp ecx, dword [esp + 0x20]
mov dword [esp + 0x138], eax
mov dword [esp + 0x13c], edx
mov word [esp + 0x158], di
ja 0x563961
lea ecx, [esi + ecx*4]
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], ecx
je 0x561d16
mov ecx, dword [esp + 0x20]
mov esi, dword [esp + 0x2c]
lea ecx, [esi + ecx*4]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x18]
movzx esi, word [ecx]
cmp si, 0xffff
je 0x561d0d
movzx ebx, word [ecx + 2]
and edi, ebx
mov dword [esp + 0x1c], ebx
movzx ebx, di
mov edi, ebx
xor ebx, ebx
cmp edi, edx
jae 0x561ce1
cmp word [eax + edi*4], 0xffff
je 0x561cf5
inc edi
mov ebx, edi
jmp 0x561ce1
mov word [eax + edi*4], si
mov esi, dword [esp + 0x1c]
lea ebx, [esp + 0x200]
mov word [eax + edi*4 + 2], si
mov edi, dword [esp + 0x14]
add ecx, 4
cmp ecx, dword [esp + 0x10]
jne 0x561ccb
cmp dword [esp + 0x44], 0
mov esi, dword [esp + 0x2c]
je 0x561d6c
movzx ecx, word [esi]
cmp cx, 0xffff
je 0x561d63
movzx ebx, word [esi + 2]
and edi, ebx
mov dword [esp + 0x1c], ebx
movzx edi, di
mov ebx, edi
xor edi, edi
cmp ebx, edx
jae 0x561d37
cmp word [eax + ebx*4], 0xffff
je 0x561d4b
inc ebx
mov edi, ebx
jmp 0x561d37
mov word [eax + ebx*4], cx
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
mov word [eax + ebx*4 + 2], cx
lea ebx, [esp + 0x200]
add esi, 4
cmp esi, dword [esp + 0x18]
jne 0x561d21
mov eax, edx
lea ecx, [esp + 0x140]
shr eax, 2
add eax, dword [esp + 0x5c]
sub edx, eax
call fcn.004b8158
cmp dword [esp + 0x20], 0
mov ecx, dword [esp + 0x30]
je 0x561e1d
push dword [esp + 0x2c]
push 0
push dword [0x8032a8]
call dword [sym.imp.kernel32.dll_HeapFree]
jmp 0x561e19
mov dword [esp + 0x1c], 0
mov eax, ebx
mov ecx, ebx
mov dword [esp + 0x138], esi
mov dword [esp + 0x13c], edi
shr eax, 2
sub ecx, eax
call fcn.004c59a4
mov esi, dword [esp + 0x140]
mov ebx, edx
mov edx, dword [esp + 0x1c]
mov edi, eax
mov ecx, esi
call fcn.004c59f1
cmp dword [esp + 0x144], 0
je 0x561df9
push esi
push 0
push dword [0x8032a8]
call dword [sym.imp.kernel32.dll_HeapFree]
mov dword [esp + 0x140], edi
mov dword [esp + 0x144], ebx
mov dword [esp + 0x148], 0
lea ebx, [esp + 0x200]
mov ecx, dword [esp + 0x30]
cmp ecx, 0x65
jae 0x56388a
test ecx, ecx
je 0x562842
shl ecx, 4
lea esi, [esp + 0x968]
lea eax, [esp + ecx + 0x968]
mov dword [esp + 0x17c], eax
mov eax, dword [esi + 4]
mov edx, dword [esi]
mov dword [esp + 0x44], esi
mov edi, eax
sub edi, edx
jb 0x563825
mov esi, dword [esp + 0xd8]
cmp eax, esi
ja 0x563835
add edx, dword [esp + 0xd4]
mov ecx, ebx
push edi
call fcn.004c86b4
add esp, 4
cmp dword [esp + 0x200], 0
jne 0x562db4
lea eax, [esp + 0x204]
mov ecx, ebx
lea edx, [esp + 0xd0]
movsd xmm0, qword [eax]
movsd xmm1, qword [eax + 8]
mov eax, dword [esp + 0x44]
movsd qword [esp + 0x100], xmm1
movsd qword [esp + 0xf8], xmm0
push dword [eax + 0xc]
push dword [eax + 8]
call fcn.004a2a46
add esp, 8
mov esi, dword [esp + 0x200]
test esi, esi
je 0x563845
mov ecx, dword [esp + 0x204]
mov edx, dword [esp + 0x208]
mov eax, dword [esp + 0x20c]
cmp dword [esp + 0xf8], 0
mov dword [esp + 0x40], ecx
mov dword [esp + 0xe4], edx
mov dword [esp + 0x78], eax
jne 0x561f39
cmp byte [esp + 0xfc], 0x14
jne 0x561f39
test byte [esp + 0x70], 1
jne 0x561f24
push 0xa
push str.keep_aliveHTTP_1.1_100_Continue_r_n_r_ninternal_error:_entered_unreachable_code:_poll_read_body_invalid_state:
call fcn.004cfa43
add esp, 8
jmp 0x561f35
push 5
push 0x7c5a92
call fcn.004cfa43
add esp, 8
xor al, 1
mov byte [esp + 0x70], al
mov ebx, dword [esp + 0x80]
mov edi, dword [esp + 0x84]
mov eax, ebx
xor eax, 3
or eax, edi
je 0x562595
mov eax, dword [esp + 0x44]
mov dword [esp + 0x178], esi
lea ecx, [esp + 0x108]
lea edx, [esp + 0xd0]
push dword [eax + 4]
push dword [eax]
call fcn.004a2a46
add esp, 8
mov eax, dword [esp + 0xa8]
xor ebx, 1
or ebx, edi
jne 0x562111
movq xmm2, qword [0x661ad0]
movd xmm1, dword [esp + 0x9c]
movd xmm0, eax
por xmm0, xmm2
por xmm1, xmm2
subsd xmm0, xmm2
subsd xmm1, xmm2
cvtsd2ss xmm0, xmm0
cvtsd2ss xmm1, xmm1
divss xmm0, xmm1
ucomiss xmm0, dword [0x661ad8]
jae 0x56213a
lea ecx, [esp + 0x80]
call fcn.004c5b2f
mov edi, dword [esp + 0x9c]
mov esi, dword [esp + 0x98]
test edi, edi
je 0x561ffa
lea eax, [esi + edi*4]
mov ecx, esi
mov dword [ecx], 0xffff
add ecx, 4
cmp ecx, eax
jne 0x561fed
mov eax, dword [esp + 0xa8]
test eax, eax
je 0x56215f
mov ecx, dword [esp + 0xa0]
lea eax, [eax + eax*2]
shl eax, 4
add eax, ecx
mov dword [esp + 0x20], eax
movzx eax, word [esp + 0xb8]
mov dword [esp + 0x5c], eax
movzx eax, ax
mov dword [esp + 0x10], eax
xor eax, eax
mov ebx, ecx
mov ecx, eax
lea eax, [ebx + 0x30]
mov dword [esp + 0x14], ecx
lea edx, [ebx + 0x1c]
mov dword [esp + 0x2c], eax
lea eax, [ecx + 1]
lea ecx, [esp + 0x80]
mov dword [esp + 0x30], eax
call fcn.004b7620
mov ecx, dword [esp + 0x5c]
xor edx, edx
mov dword [esp + 0x1c], eax
mov word [ebx + 0x2c], ax
and ecx, eax
movzx ecx, cx
mov ebx, ecx
xor ecx, ecx
cmp ebx, edi
jae 0x562069
cmp word [esi + ebx*4], 0xffff
je 0x5620ea
mov eax, esi
mov dword [esp + 0x18], edx
movzx esi, word [esi + ebx*4 + 2]
mov edx, dword [esp + 0x10]
mov ecx, ebx
and esi, edx
sub ecx, esi
and ecx, edx
mov edx, dword [esp + 0x18]
cmp ecx, edx
jb 0x5620cc
inc ebx
inc edx
mov esi, eax
mov ecx, ebx
jmp 0x562069
mov ebx, esi
movzx esi, word [esi + edx*4 + 2]
mov word [esp + 0x18], si
mov esi, dword [esp + 0x14]
mov dword [esp + 0x14], ecx
mov word [ebx + edx*4], si
mov esi, dword [esp + 0x1c]
mov word [ebx + edx*4 + 2], si
inc edx
movzx esi, word [esp + 0x18]
mov dword [esp + 0x1c], esi
mov ebx, edx
mov esi, eax
mov edx, ebx
xor ebx, ebx
cmp edx, edi
jae 0x5620ce
movzx ecx, word [esi + edx*4]
cmp cx, 0xffff
jne 0x56209f
mov eax, dword [esp + 0x14]
mov word [esi + edx*4], ax
jmp 0x5620f4
mov eax, dword [esp + 0x14]
mov edx, ebx
mov word [esi + ebx*4], ax
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x2c]
mov word [esi + edx*4 + 2], ax
cmp ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x30]
jne 0x562031
jmp 0x56215f
mov esi, dword [esp + 0x9c]
mov ecx, esi
mov edx, esi
shr ecx, 2
sub edx, ecx
cmp eax, edx
jne 0x56215f
test eax, eax
je 0x562637
add esi, esi
lea ecx, [esp + 0x80]
mov edx, esi
jmp 0x56215a
mov edx, dword [esp + 0x9c]
xor eax, eax
lea ecx, [esp + 0x80]
mov dword [esp + 0x84], eax
mov dword [esp + 0x80], eax
add edx, edx
call fcn.004cce30
lea ecx, [esp + 0x80]
lea edx, [esp + 0xf8]
call fcn.004b7620
movzx ecx, word [esp + 0xb8]
mov ebx, eax
mov eax, dword [esp + 0x98]
mov edx, dword [esp + 0xa0]
mov esi, dword [esp + 0x9c]
mov dword [esp + 0x10], 0
mov dword [esp + 0x2c], ebx
and ebx, ecx
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0xa8]
mov dword [esp + 0x1c], eax
mov al, byte [esp + 0xfc]
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0xfc]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0xf8]
mov byte [esp + 0xe0], al
mov dword [esp + 0x74], edx
mov dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x100]
mov dword [esp + 0x38], ecx
mov eax, ebx
mov ebx, eax
xor eax, eax
cmp ebx, esi
jae 0x5621e7
mov eax, dword [esp + 0x1c]
movzx edi, word [eax + ebx*4]
cmp edi, 0xffff
je 0x5622a5
movzx eax, word [eax + ebx*4 + 2]
mov ecx, dword [esp + 0x18]
mov edx, ebx
and ecx, eax
sub edx, ecx
and edx, dword [esp + 0x18]
cmp edx, dword [esp + 0x10]
jb 0x5622cc
cmp ax, word [esp + 0x2c]
jne 0x56229b
mov edx, dword [esp + 0x14]
cmp edx, edi
jbe 0x5637ee
cmp dword [esp + 0x5c], 0
mov ecx, dword [esp + 0x30]
lea edx, [edi + edi*2]
sete al
shl edx, 4
mov ecx, dword [ecx + edx + 0x1c]
mov dword [esp + 0x20], edx
test ecx, ecx
setne dl
cmp dl, al
je 0x56229b
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x20]
test ecx, ecx
lea eax, [eax + edx + 0x1c]
je 0x56228b
mov ecx, dword [esp + 0x38]
cmp dword [eax + 8], ecx
jne 0x56229b
push dword [esp + 0x38]
push dword [esp + 0x78]
push dword [eax + 4]
call fcn.0064aeea
add esp, 0xc
test eax, eax
jne 0x56229b
jmp 0x562713
mov cl, byte [esp + 0xe0]
cmp byte [eax + 4], cl
je 0x562713
inc dword [esp + 0x10]
inc ebx
jmp 0x5621e5
mov ecx, dword [esp + 0x5c]
test ecx, ecx
je 0x56231d
push dword [esp + 0x38]
push dword [esp + 0x78]
lea eax, [esp + 0x10c]
push eax
lea eax, [esp + 0x20c]
push eax
call dword [ecx]
add esp, 0x10
jmp 0x562333
cmp dword [esp + 0x10], 0x200
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x5c]
setae byte [esp + 0x20]
xor eax, 2
or eax, dword [esp + 0x84]
setne byte [esp + 0x18]
test ecx, ecx
je 0x56240b
push dword [esp + 0x38]
push dword [esp + 0x78]
lea eax, [esp + 0x10c]
push eax
lea eax, [esp + 0x20c]
push eax
call dword [ecx]
add esp, 0x10
jmp 0x562421
mov eax, dword [esp + 0x74]
mov byte [esp + 0x204], al
mov dword [esp + 0x200], 0
mov eax, dword [esp + 0x14]
movq xmm0, qword [esp + 0x200]
movsd xmm1, qword [esp + 0x208]
mov edi, dword [esp + 0x2c]
cmp eax, 0x8000
movsd qword [esp + 0x50], xmm1
movq qword [esp + 0x48], xmm0
jae 0x56385b
cmp eax, dword [esp + 0xa4]
jne 0x562396
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0xa0]
call fcn.004cd6ad
mov ecx, dword [esp + 0xa0]
mov eax, dword [esp + 0xa8]
mov esi, dword [esp + 0x9c]
mov dword [esp + 0x30], ecx
mov edx, dword [esp + 0x30]
lea ecx, [eax + eax*2]
inc eax
shl ecx, 4
cmp ebx, esi
mov dword [edx + ecx], 0
movsd xmm0, qword [esp + 0x108]
movsd xmm1, qword [esp + 0x110]
movsd qword [edx + ecx + 0xc], xmm0
movsd qword [edx + ecx + 0x14], xmm1
movsd xmm0, qword [esp + 0x48]
movsd xmm1, qword [esp + 0x50]
movsd qword [edx + ecx + 0x1c], xmm0
movsd qword [edx + ecx + 0x24], xmm1
mov word [edx + ecx + 0x2c], di
mov dword [esp + 0xa8], eax
jae 0x5637ff
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x14]
mov word [eax + ebx*4], cx
mov word [eax + ebx*4 + 2], di
jmp 0x56258e
mov eax, dword [esp + 0x74]
mov byte [esp + 0x204], al
mov dword [esp + 0x200], 0
mov eax, dword [esp + 0x14]
movq xmm0, qword [esp + 0x200]
movsd xmm1, qword [esp + 0x208]
mov edi, dword [esp + 0x2c]
cmp eax, 0x8000
movsd qword [esp + 0x50], xmm1
movq qword [esp + 0x48], xmm0
jae 0x56385b
cmp eax, dword [esp + 0xa4]
jne 0x56248f
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0xa0]
call fcn.004cd6ad
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0x98]
mov eax, dword [esp + 0xa8]
mov esi, dword [esp + 0x9c]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x1c], edx
mov cl, byte [esp + 0x18]
mov edx, dword [esp + 0x30]
mov dword [esp + 0x10], 0
and byte [esp + 0x20], cl
lea ecx, [eax + eax*2]
inc eax
shl ecx, 4
mov dword [edx + ecx], 0
movsd xmm0, qword [esp + 0x108]
movsd xmm1, qword [esp + 0x110]
movsd qword [edx + ecx + 0xc], xmm0
movsd qword [edx + ecx + 0x14], xmm1
movsd xmm0, qword [esp + 0x48]
movsd xmm1, qword [esp + 0x50]
movsd qword [edx + ecx + 0x1c], xmm0
movsd qword [edx + ecx + 0x24], xmm1
mov word [edx + ecx + 0x2c], di
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0x1c]
mov ecx, ebx
xor ebx, ebx
cmp ecx, esi
jae 0x5624f7
movzx edx, word [eax + ecx*4]
cmp dx, 0xffff
je 0x56253c
movzx eax, word [eax + ecx*4 + 2]
mov ebx, edi
mov edi, dword [esp + 0x1c]
inc dword [esp + 0x10]
mov word [esp + 0x18], ax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x14], edx
mov word [edi + ecx*4], ax
mov eax, dword [esp + 0x1c]
movzx edi, word [esp + 0x18]
mov word [eax + ecx*4 + 2], bx
inc ecx
mov ebx, ecx
jmp 0x5624f7
mov edx, eax
mov eax, dword [esp + 0x14]
cmp dword [esp + 0x10], 0x7f
mov bl, byte [esp + 0x20]
mov word [edx + ecx*4], ax
mov word [edx + ecx*4 + 2], di
seta bh
mov esi, dword [esp + 0x80]
mov ecx, dword [esp + 0x84]
or bl, bh
mov edx, esi
or edx, ecx
sete dl
test bl, dl
mov edx, 1
cmovne esi, edx
mov edx, 0
cmovne ecx, edx
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], ecx
mov esi, dword [esp + 0x178]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0xe4]
mov dword [esp + 0x200], esi
mov edi, dword [esp + 0x78]
movzx esi, word [esp + 0x108]
movq xmm0, qword [esp + 0xf8]
movsd xmm1, qword [esp + 0x100]
mov dl, byte [esp + 0x10a]
lea ebx, [esp + 0x200]
mov dword [esp + 0x204], eax
mov dword [esp + 0x208], ecx
lea ecx, [esp + 0x204]
mov dword [esp + 0x20c], edi
mov byte [esp + 0x210], 0
movsd qword [esp + 0x50], xmm1
movq qword [esp + 0x48], xmm0
mov word [ecx + 0xd], si
mov esi, dword [esp + 0x44]
mov byte [ecx + 0xf], dl
lea ecx, [esp + 0x120]
lea edx, [esp + 0x48]
add esi, 0x10
push ebx
call fcn.004b8ab6
add esp, 4
cmp esi, dword [esp + 0x17c]
jne 0x561e46
jmp 0x562842
mov ecx, 8
mov word [esp + 0xb8], 7
call fcn.004c5953
mov dword [esp + 0x200], eax
mov dword [esp + 0x204], edx
lea ecx, [esp + 0x200]
mov edx, 8
mov dword [esp + 0x208], 0
call fcn.004c58ff
mov eax, dword [esp + 0x208]
movsd xmm0, qword [esp + 0x200]
lea ecx, [esp + 0x48]
mov dword [esp + 0x50], eax
movsd qword [esp + 0x48], xmm0
call fcn.0049abff
mov edi, dword [esp + 0x48]
mov ebx, dword [esp + 0x50]
test esi, esi
je 0x5626b9
push dword [esp + 0x98]
push 0
push dword [0x8032a8]
call dword [sym.imp.kernel32.dll_HeapFree]
mov dword [esp + 0x98], edi
mov dword [esp + 0x9c], ebx
mov ecx, 0x120
mov edx, 4
mov al, byte [0x803894]
call fcn.004889b0
test eax, eax
je 0x56393f
lea ecx, [esp + 0xa0]
mov esi, eax
call fcn.004cca0b
mov dword [esp + 0xa0], esi
mov dword [esp + 0xa4], 6
mov dword [esp + 0xa8], 0
jmp 0x56215f
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x20]
cmp dword [eax + edx], 0
lea ecx, [eax + edx]
mov dword [esp + 0x1c], ecx
je 0x5627c3
mov ebx, dword [esp + 0xb4]
mov esi, dword [ecx + 8]
cmp ebx, dword [esp + 0xb0]
mov edx, ebx
jne 0x562756
lea ecx, [esp + 0xac]
mov edx, ebx
call fcn.004cd611
mov edx, dword [esp + 0xb4]
mov eax, dword [esp + 0xac]
mov ecx, edx
inc edx
shl ecx, 5
cmp edx, esi
mov dword [eax + ecx], 1
mov dword [eax + ecx + 4], esi
mov dword [eax + ecx + 8], 0
mov dword [eax + ecx + 0xc], edi
movsd xmm0, qword [esp + 0x108]
movsd xmm1, qword [esp + 0x110]
movsd qword [eax + ecx + 0x10], xmm0
movsd qword [eax + ecx + 0x18], xmm1
mov dword [esp + 0xb4], edx
jbe 0x56380a
mov edx, dword [esp + 0x1c]
shl esi, 5
xor ecx, ecx
inc ecx
mov dword [eax + esi + 8], ecx
mov dword [eax + esi + 0xc], ebx
mov dword [edx], ecx
mov dword [edx + 8], ebx
jmp 0x56258e
mov esi, dword [esp + 0xb4]
cmp esi, dword [esp + 0xb0]
mov eax, esi
jne 0x5627ea
lea ecx, [esp + 0xac]
mov edx, esi
call fcn.004cd611
mov eax, dword [esp + 0xb4]
mov edx, dword [esp + 0xac]
mov ecx, eax
xor ebx, ebx
inc eax
shl ecx, 5
mov dword [edx + ecx], ebx
mov dword [edx + ecx + 4], edi
mov dword [edx + ecx + 8], ebx
mov dword [edx + ecx + 0xc], edi
movsd xmm0, qword [esp + 0x108]
movsd xmm1, qword [esp + 0x110]
movsd qword [edx + ecx + 0x10], xmm0
movsd qword [edx + ecx + 0x18], xmm1
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xb4], eax
mov dword [ecx], 1
mov dword [ecx + 4], esi
mov dword [ecx + 8], esi
jmp 0x56258e
mov esi, dword [esp + 0x80]
mov edi, dword [esp + 0x84]
xor esi, 3
mov dword [esp + 0x10], edi
mov eax, esi
mov dword [esp + 0x14], esi
or eax, edi
je 0x56297d
mov al, byte [0x803894]
mov ecx, 0x10
mov edx, 4
call fcn.004889b0
test eax, eax
je 0x563896
movq xmm0, qword [0x7f5258]
movsd xmm1, qword [0x7f5250]
xor ecx, ecx
mov ebx, eax
movq qword [eax + 8], xmm0
movsd qword [eax], xmm1
call fcn.004b75a8
mov al, byte [0x803894]
mov ecx, 0x40
mov edx, 8
call fcn.004889b0
test eax, eax
je 0x563952
mov ecx, 0x10
mov edi, eax
lea esi, [esp + 0x80]
mov edx, 0x5ca8d124
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x1c], ebx
mov ecx, ebx
push 0x75195c
push eax
push 0x72317ffe
push 0x598e592c
push 0x4df0e246
call fcn.004c4f58
add esp, 0x14
test eax, eax
je 0x562a2d
mov ebx, eax
mov esi, edx
push eax
lea eax, [esp + 0x1f4]
push eax
call dword [edx + 0xc]
add esp, 8
movdqu xmm0, xmmword [esp + 0x1f0]
pcmpeqb xmm0, xmmword [0x661be0]
pmovmskb eax, xmm0
cmp eax, 0xffff
jne 0x562a09
mov ecx, 0x10
lea edi, [esp + 0x200]
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
push ebx
push 0
push dword [0x8032a8]
call dword [sym.imp.kernel32.dll_HeapFree]
mov eax, dword [esp + 0x200]
xor eax, 3
or eax, dword [esp + 0x204]
je 0x562a2d
lea eax, [esp + 0x200]
push eax
call fcn.004cc9a7
add esp, 4
jmp 0x562a2d
cmp dword [esp + 0xe8], 0
setne bl
je 0x5629f6
movq xmm0, qword [esp + 0xe8]
movsd xmm1, qword [esp + 0xf0]
mov ecx, 0x10
mov edx, 4
movsd qword [esp + 0x198], xmm1
movq qword [esp + 0x190], xmm0
mov al, byte [0x803894]
call fcn.004889b0
test eax, eax
je 0x563896
movq xmm0, qword [0x7f5258]
movsd xmm1, qword [0x7f5250]
xor ecx, ecx
mov dword [esp + 0x1c], eax
movq qword [eax + 8], xmm0
movsd qword [eax], xmm1
call fcn.004b75a8
mov al, 1
mov dword [esp + 0x2c], eax
jmp 0x562a6a
mov al, 1
mov dword [esp + 0x1c], 0
mov dword [esp + 0x2c], eax
jmp 0x562b87
push ebx
call dword [esi]
add esp, 4
cmp dword [esi + 4], 0
je 0x562a2d
cmp dword [esi + 8], 9
jb 0x562a1e
mov ebx, dword [ebx - 4]
push ebx
push 0
push dword [0x8032a8]
call dword [sym.imp.kernel32.dll_HeapFree]
cmp dword [esp + 0xe8], 0
setne bl
je 0x562b7f
movq xmm0, qword [esp + 0xe8]
movsd xmm1, qword [esp + 0xf0]
mov dword [esp + 0x2c], 0
movsd qword [esp + 0x198], xmm1
movq qword [esp + 0x190], xmm0
mov al, byte [0x803894]
mov ecx, 0x10
mov edx, 4
call fcn.004889b0
test eax, eax
je 0x563896
movq xmm0, qword [esp + 0x190]
movsd xmm1, qword [esp + 0x198]
mov ecx, dword [esp + 0x1c]
mov edx, 0x1b12c8ac
movsd qword [eax + 8], xmm1
movq qword [eax], xmm0
push 0x75196c
push eax
push 0x69dc6c97
push 0x8ad8820f
push 0x386b7ef2
call fcn.004c4f58
add esp, 0x14
test eax, eax
je 0x562b75
mov esi, eax
mov edi, edx
push eax
lea eax, [esp + 0x1e4]
push eax
call dword [edx + 0xc]
add esp, 8
movdqu xmm0, xmmword [esp + 0x1e0]
pcmpeqb xmm0, xmmword [0x661bf0]
pmovmskb eax, xmm0
cmp eax, 0xffff
jne 0x562b51
movq xmm0, qword [esi]
movsd xmm1, qword [esi + 8]
movsd qword [esp + 0x208], xmm1
movq qword [esp + 0x200], xmm0
push esi
push 0
push dword [0x8032a8]
call dword [sym.imp.kernel32.dll_HeapFree]
mov eax, dword [esp + 0x200]
test eax, eax
je 0x562b75
push dword [esp + 0x208]
push dword [esp + 0x208]
lea ecx, [esp + 0x214]
push ecx
call dword [eax + 8]
add esp, 0xc
jmp 0x562b75
push esi
call dword [edi]
add esp, 4
cmp dword [edi + 4], 0
je 0x562b75
cmp dword [edi + 8], 9
jb 0x562b66
mov esi, dword [esi - 4]
push esi
push 0
push dword [0x8032a8]
call dword [sym.imp.kernel32.dll_HeapFree]
mov dword [esp + 0x18], 0
jmp 0x562b8d
mov dword [esp + 0x2c], 0
mov al, 1
mov dword [esp + 0x18], eax
mov ecx, 0x10
lea edi, [esp + 0x200]
lea esi, [esp + 0x120]
mov edx, dword [esp + 0xc4]
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0xc8]
mov byte [esp + 0x246], al
mov eax, dword [esp + 0x1c]
mov word [esp + 0x244], dx
mov dword [esp + 0x240], eax
movzx eax, dx
cmp eax, 0x64
jg 0x562bda
mov edi, dword [esp + 0xc]
je 0x562c0a
jmp 0x562bfd
mov edi, dword [esp + 0xc]
cmp eax, 0x65
je 0x562ee6
cmp eax, 0xcc
je 0x562e9b
cmp eax, 0x130
je 0x562e9b
lea ecx, [eax - 0x66]
cmp cx, 0x62
jae 0x562f87
cmp dword [edi + 0xe4], 0
je 0x562eb5
lea ecx, [esp + 0x200]
call fcn.004cb423
mov ecx, dword [esp + 0x240]
call fcn.004b75a8
mov eax, dword [esp + 0x10]
or dword [esp + 0x14], eax
jne 0x562c5c
mov eax, dword [esp + 0x80]
xor eax, 3
or eax, dword [esp + 0x84]
je 0x562c5c
lea eax, [esp + 0x80]
push eax
call fcn.004cc9a7
add esp, 4
mov eax, dword [esp + 0xd0]
push dword [esp + 0xd8]
push dword [esp + 0xd8]
lea ecx, [esp + 0xe4]
push ecx
call dword [eax + 8]
add esp, 0xc
mov eax, dword [esp + 0xe8]
test eax, eax
sete cl
or bl, cl
jne 0x562cab
push dword [esp + 0xf0]
push dword [esp + 0xf0]
lea ecx, [esp + 0xfc]
push ecx
call dword [eax + 8]
add esp, 0xc
lea ebx, [esp + 0x200]
jmp 0x560a7d
mov dword [esp + 0x1c], 3
mov dword [esp + 0x14], 0
mov edi, dword [esp + 0xc]
jmp 0x562cf3
mov eax, 2
mov edi, dword [esp + 0xc]
movsx eax, al
mov dword [esp + 0x14], 0
mov dword [esp + 0x1c], 4
mov al, byte [eax + 0x7f7014]
mov byte [esp + 0x27], al
lea esi, [esp + 0x1a0]
mov ecx, esi
call fcn.004bab53
mov ecx, esi
call fcn.004bab83
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
xor eax, 4
or eax, esi
je 0x5631da
push 0x3a
lea eax, [esp + 0x932]
push eax
lea eax, [esp + 0x848]
push eax
call fcn.0064a810
add esp, 0xc
mov eax, dword [esp + 0x1c]
xor eax, 3
or eax, esi
jne 0x5631e8
mov eax, dword [edi + 0xe4]
xor ecx, ecx
cmp byte [edi + 0xa0], 0
sete cl
cmp eax, dword [edi + ecx*4 + 0xa4]
jae 0x563194
mov edx, dword [esp + 0x174]
lea ecx, [esp + 0x968]
push dword [esp + 0x11c]
call fcn.0055f046
add esp, 4
xor esi, esi
cmp byte [esp + 0x968], 5
je 0x56319d
mov ecx, dword [esp + 0x968]
mov eax, dword [esp + 0x96c]
cmp cl, 4
jne 0x5631a4
test eax, eax
jne 0x560994
jmp 0x5631d3
mov edi, dword [esp + 0xc]
mov cl, 1
xor esi, esi
mov dword [esp + 0x1c], 4
mov al, 1
mov byte [esp + 0x27], 0xb
xor edx, edx
mov dword [esp + 0x18], ecx
test al, al
mov dword [esp + 0x14], esi
je 0x562e00
mov eax, dword [esp + 0x80]
xor eax, 3
or eax, dword [esp + 0x84]
je 0x562e00
lea eax, [esp + 0x80]
push eax
mov esi, edx
call fcn.004cc9a7
mov edx, esi
add esp, 4
test dl, dl
jne 0x562e10
lea ecx, [esp + 0x120]
call fcn.004cb423
mov eax, dword [esp + 0xd0]
push dword [esp + 0xd8]
push dword [esp + 0xd8]
lea ecx, [esp + 0xe4]
push ecx
call dword [eax + 8]
add esp, 0xc
cmp byte [esp + 0x18], 0
je 0x562cf3
mov eax, dword [esp + 0xe8]
test eax, eax
je 0x562cf3
push dword [esp + 0xf0]
push dword [esp + 0xf0]
lea ecx, [esp + 0xfc]
push ecx
call dword [eax + 8]
add esp, 0xc
jmp 0x562cf3
mov dword [esp + 0x1c], 3
mov dword [esp + 0x14], 0
jmp 0x562cf3
mov dword [esp + 0x14], 0
mov edi, dword [esp + 0xc]
lea ebx, [esp + 0x200]
jmp 0x562cf3
mov dword [esp + 0x68], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x6c], 0
jmp 0x562efc
xor esi, esi
mov dword [esp + 0x1c], 3
lea ebx, [esp + 0x200]
mov ecx, ebx
call fcn.004cb423
mov ecx, dword [esp + 0x240]
call fcn.004b75a8
mov cl, byte [esp + 0x62]
mov dl, byte [esp + 0x3e]
jmp 0x562f74
mov al, 1
mov dword [esp + 0x68], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x6c], eax
lea ebx, [esp + 0x200]
mov eax, dword [esp + 0x200]
movzx ecx, word [esp + 0x209]
mov esi, dword [esp + 0x204]
mov dword [esp + 0x1c], eax
mov al, byte [esp + 0x208]
mov byte [esp + 0x27], al
movzx eax, byte [esp + 0x20b]
shl eax, 0x10
or ecx, eax
mov dword [esp + 0xc0], ecx
push 0x3a
lea eax, [esp + 0x210]
push eax
lea eax, [esp + 0x936]
push eax
call fcn.0064a810
add esp, 0xc
mov ch, byte [esp + 0x70]
mov dl, byte [esp + 0x246]
mov cl, byte [esp + 0x247]
mov eax, dword [esp + 0x6c]
xor al, 1
and ch, al
mov byte [esp + 0x7c], ch
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x3e], dl
mov dl, 1
mov byte [esp + 0x62], cl
jmp 0x562dd1
movzx ecx, byte [edi + 0x78]
lea ebx, [esp + 0x200]
cmp ecx, 0xb
je 0x562fd5
cmp ecx, 5
je 0x5630ed
cmp ecx, 7
jne 0x562fd5
add eax, 0xffffff38
cmp ax, 0x64
jae 0x562fd5
mov al, 1
mov dword [esp + 0x68], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x6c], eax
jmp 0x562f03
mov eax, 3
jmp 0x562cd2
xor eax, eax
mov ecx, ebx
lea edx, [esp + 0x48]
mov dword [esp + 0x4c], 0x45
mov dword [esp + 0x54], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x48], eax
call fcn.004b81eb
test al, al
je 0x563029
cmp byte [esp + 0x246], 1
jne 0x563092
xor esi, esi
mov dword [esp + 0x1c], 4
mov byte [esp + 0x27], 2
jmp 0x562ec6
mov dword [esp + 0x1c], 3
jmp 0x562cc7
lea ecx, [esp + 0x1c0]
mov edx, ebx
call fcn.004cfaf9
cmp dword [esp + 0x1c0], 1
jne 0x5630b6
mov edx, dword [esp + 0x1c8]
lea ecx, [esp + 0x48]
push dword [esp + 0x1cc]
call fcn.004cf6f9
add esp, 4
cmp byte [esp + 0x48], 0
je 0x563141
mov al, byte [esp + 0x49]
xor esi, esi
mov dword [esp + 0x1c], 4
mov byte [esp + 0x27], al
jmp 0x562ec6
mov eax, 3
mov edi, dword [esp + 0xc]
lea ebx, [esp + 0x200]
jmp 0x562cd6
mov ecx, ebx
call fcn.004d047a
movzx eax, al
mov dword [esp + 0x6c], 0
not eax
mov dword [esp + 0x68], eax
xor eax, eax
dec eax
mov dword [esp + 0x64], eax
jmp 0x562f03
xor esi, esi
mov ecx, ebx
lea edx, [esp + 0x48]
mov dword [esp + 0x4c], 0x18
mov dword [esp + 0x54], esi
mov dword [esp + 0x50], esi
mov dword [esp + 0x48], esi
call fcn.004b81eb
test al, al
je 0x5630ff
mov dword [esp + 0x1c], 4
mov byte [esp + 0x27], 1
jmp 0x562ec6
mov dword [esp + 0x68], 0
mov dword [esp + 0x64], 0
jmp 0x563151
xor eax, eax
dec eax
mov dword [esp + 0x68], eax
jmp 0x56314d
mov eax, dword [esp + 0x80]
test eax, eax
je 0x56312f
push dword [esp + 0x88]
push dword [esp + 0x88]
lea ecx, [esp + 0x94]
push ecx
call dword [eax + 8]
add esp, 0xc
mov dword [esp + 0x14], 0
mov byte [esp + 0x27], 9
jmp 0x562e8b
mov eax, dword [esp + 0x50]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x64], eax
mov dword [esp + 0x6c], 0
jmp 0x562f03
mov dword [esp + 0x28], 5
mov eax, 5
jmp 0x562cd2
mov dword [esp + 0x14], 0
mov byte [esp + 0x27], 0xa
jmp 0x562cc7
mov dword [esp + 0x28], 5
mov eax, 5
jmp 0x563082
xor ecx, ecx
mov edx, 9
jmp 0x5631e1
mov ecx, 4
jmp 0x5631d1
lea esi, [esp + 0x200]
mov dword [esi], ecx
mov ecx, 6
mov dword [esi + 4], eax
call fcn.004cbacb
mov edx, esi
mov ecx, eax
mov dword [esp + 0xc0], eax
xor esi, esi
call fcn.004cf3b7
mov ecx, 3
jmp 0x563222
mov ecx, 2
jmp 0x5631e1
movzx edx, byte [esp + 0x27]
xor ecx, ecx
call fcn.004cbacb
jmp 0x56323b
mov ecx, dword [esp + 0xc0]
movzx eax, byte [esp + 0x27]
shl ecx, 8
or ecx, eax
lea eax, [esp + 0x8f4]
mov dword [esp + 0xc0], ecx
push 0x3a
lea ecx, [esp + 0x844]
push ecx
push eax
call fcn.0064a810
mov ecx, dword [esp + 0x28]
add esp, 0xc
mov ebx, dword [esp + 0x6c]
mov eax, ecx
xor eax, 4
or eax, esi
je 0x563293
mov eax, ecx
xor eax, 3
or eax, esi
jne 0x56329f
mov eax, dword [esp + 0xc0]
mov cl, byte [edi + 0x9a]
mov ebx, eax
mov dword [esp + 0x840], eax
mov byte [esp + 0x1c], cl
mov ecx, edi
call fcn.004d02ec
mov eax, dword [edi + 0xe4]
test eax, eax
je 0x56335e
mov ecx, dword [esp + 0xcc]
xor edx, edx
mov ecx, dword [ecx]
movzx esi, byte [ecx + edx]
cmp esi, 0xd
je 0x563280
cmp esi, 0xa
jne 0x563343
inc edx
cmp eax, edx
jne 0x56326e
mov dword [esp + 0x120], eax
mov edx, eax
jmp 0x563352
xor edx, edx
mov ecx, 5
jmp 0x563394
lea eax, [esp + 0x8b8]
lea edx, [esp + 0x8f4]
mov dword [esp + 0x14], esi
mov dword [esp + 0x1c], ecx
mov ecx, 0xe
mov edi, eax
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov esi, dword [esp + 0xc]
movzx ecx, word [edx + 0x38]
mov byte [esi + 0x98], 0
mov word [eax + 0x38], cx
mov cl, byte [esp + 0x7c]
cmp byte [esi + 0x9a], 2
jne 0x5632e4
test cl, cl
jne 0x5632f1
xor eax, eax
cmp cl, 1
adc al, 1
mov byte [esi + 0x9a], al
mov edi, dword [esp + 0x68]
test bl, bl
mov ebx, dword [esp + 0x64]
setne al
mov dword [esp + 0x18], eax
mov eax, edi
or eax, ebx
mov al, byte [esp + 0x3e]
mov byte [esi + 0x9b], al
je 0x563767
mov ecx, edi
mov edx, ebx
xor eax, eax
xor ecx, 0xfffffffe
not edx
or edx, ecx
je 0x56378c
mov eax, edi
xor ecx, ecx
mov edx, edi
and eax, ebx
cmp eax, 0xffffffff
mov eax, ebx
jne 0x563790
mov cl, 2
jmp 0x563790
cmp eax, edx
mov dword [esp + 0x120], edx
jb 0x563974
mov ecx, dword [esp + 0xcc]
call fcn.004a2d7e
cmp byte [ebx + 0x18], 0
mov eax, ebx
je 0x563399
cmp byte [esp + 0x1c], 0
jne 0x563399
cmp dword [edi + 0xe4], 0
jne 0x563399
mov ecx, edi
call fcn.004d0302
lea eax, [esp + 0x840]
push eax
call fcn.00550364
add esp, 4
xor edx, edx
mov ecx, 4
jmp 0x56342b
mov eax, dword [edi + 0x58]
mov ecx, dword [edi + 0x5c]
mov edx, 3
mov esi, 0
mov dword [esp + 0x200], ebx
add eax, 0xfffffffe
adc ecx, 0xffffffff
cmp edx, eax
sbb esi, ecx
jb 0x563424
test eax, eax
lea esi, [esp + 0x200]
mov ecx, 3
jne 0x563429
cmp dword [edi + 0xe4], 0x18
jb 0x563429
mov eax, dword [esp + 0xcc]
mov eax, dword [eax]
movdqu xmm0, xmmword [eax]
movdqu xmm1, xmmword [eax + 8]
pcmpeqb xmm1, xmmword [0x661c00]
pcmpeqb xmm0, xmmword [0x661c10]
pand xmm0, xmm1
pmovmskb eax, xmm0
cmp eax, 0xffff
jne 0x563429
xor ecx, ecx
mov edx, 5
call fcn.004cbacb
mov ebx, eax
push esi
call fcn.00550364
mov ecx, 3
add esp, 4
jmp 0x563429
mov ecx, 3
xor edx, edx
mov dword [esp + 0x18], 0
mov eax, ecx
xor eax, 5
or eax, edx
jne 0x563441
xor eax, eax
inc eax
jmp 0x5634b7
mov eax, ecx
and al, 7
cmp al, 3
je 0x563473
mov eax, ecx
and eax, 7
cmp eax, 4
jne 0x5634bf
mov eax, dword [edi + 0x58]
mov ecx, dword [edi + 0x5c]
mov esi, 3
add eax, 0xfffffffe
adc ecx, 0xffffffff
xor edx, edx
cmp esi, eax
sbb edx, ecx
jb 0x5634b3
cmp eax, 3
je 0x56349e
jmp 0x5634b3
mov ecx, dword [esp + 0x118]
lea edx, [esp + 0x200]
mov dword [edx + 8], ebx
mov dword [edx + 4], 0
mov dword [edx], 3
call fcn.00550ab0
test eax, eax
jne 0x563760
mov ecx, edi
mov byte [edi + 0x128], 1
call fcn.004d02ec
mov ecx, edi
call fcn.004d0302
xor edx, edx
xor eax, eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
lea eax, [esp + 0x974]
mov dword [eax - 0xc], ecx
mov dword [eax - 8], edx
mov dword [eax - 4], ebx
lea ebx, [esp + 0x87c]
mov ecx, 0xe
mov edi, eax
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
movzx ecx, word [ebx + 0x38]
mov word [eax + 0x38], cx
mov cl, byte [esp + 0x3e]
mov byte [eax + 0x3a], cl
mov cl, byte [esp + 0x62]
mov byte [eax + 0x3b], cl
mov ecx, dword [esp + 0x68]
or ecx, dword [esp + 0x64]
je 0x56367c
lea ecx, [esp + 0x200]
mov dword [ecx], 0
call fcn.004cbef6
xor ecx, ecx
mov esi, eax
xor ebx, ebx
call fcn.004cbf43
mov edi, eax
mov al, byte [0x803894]
mov ecx, 0x30
mov edx, 4
call fcn.004889b0
test eax, eax
je 0x5639ce
xor ecx, ecx
mov dword [esp + 0x1c], eax
inc ecx
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 0xc], esi
mov dword [eax + 8], esi
mov dword [eax + 0x14], edi
mov dword [eax + 0x10], edi
mov dword [eax + 0x18], ebx
mov dword [eax + 0x1c], 0x80000000
mov dword [eax + 0x20], ecx
mov dword [eax + 0x24], ebx
mov dword [eax + 0x2c], ebx
lock inc dword [eax]
jle 0x56394e
mov al, byte [0x803894]
mov ecx, 0x1c
mov edx, 4
call fcn.004889b0
mov edi, dword [esp + 0xc]
test eax, eax
je 0x5639da
mov esi, eax
xor eax, eax
xor ebx, ebx
mov ecx, 0x70
mov edx, 8
inc eax
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 8], ebx
mov byte [esi + 0xc], bl
mov dword [esi + 0x10], ebx
mov byte [esi + 0x18], bl
mov al, byte [0x803894]
call fcn.004889b0
test eax, eax
je 0x5639e6
xor ecx, ecx
mov dword [esp + 0x10], eax
inc ecx
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 8], 3
mov byte [eax + 0x48], bl
mov dword [eax + 0x50], ebx
mov byte [eax + 0x58], bl
mov dword [eax + 0x5c], ebx
mov byte [eax + 0x64], bl
mov byte [eax + 0x68], bl
lock inc dword [eax]
jle 0x56394e
mov al, byte [0x803894]
mov ecx, 0x18
mov edx, 4
call fcn.004889b0
test eax, eax
je 0x5639f2
xor ebx, ebx
mov ecx, eax
inc ebx
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], 2
xor eax, eax
mov dword [ecx + 0xc], eax
mov dword [ecx + 0x14], eax
lock inc dword [ecx]
jle 0x56394e
cmp byte [edi + 0x120], 3
je 0x563653
mov dword [esp + 0x14], ecx
lea ecx, [edi + 0x110]
call fcn.00557dac
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov dword [edi + 0x110], eax
mov eax, dword [esp + 0x1c]
mov dword [edi + 0x114], ecx
mov dword [edi + 0x118], eax
mov dword [edi + 0x11c], esi
mov byte [edi + 0x120], 0
jmp 0x563684
mov edi, dword [esp + 0xc]
xor ebx, ebx
xor eax, eax
cmp byte [esp + 0x18], 0
mov dword [esp + 0x14], ecx
mov dword [esp + 0x1c], eax
je 0x5636f4
mov dword [esp + 0x18], ebx
call fcn.004ce64d
mov ebx, edi
mov edi, eax
mov esi, edx
cmp dword [ebx + 0x70], 0
je 0x5636b0
lea ecx, [ebx + 0x74]
call fcn.004ce62a
xor edx, edx
mov dword [ebx + 0x70], 1
mov dword [ebx + 0x74], edi
lea ecx, [esp + 0x9a8]
inc edx
push esi
call fcn.005572f8
add esp, 4
cmp eax, 2
mov dword [esp + 0x200], eax
mov dword [esp + 0x204], edx
je 0x5636f0
lea eax, [esp + 0x200]
push eax
call fcn.00557433
add esp, 4
mov ebx, dword [esp + 0x18]
lea edx, [esp + 0x200]
lea esi, [esp + 0x968]
mov ecx, 0x12
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x118]
mov dword [edx + 0x50], eax
mov eax, dword [esp + 0x10]
mov dword [edx + 0x54], eax
mov eax, dword [esp + 0x64]
mov dword [edx + 0x5c], eax
mov eax, dword [esp + 0x68]
mov dword [edx + 0x58], eax
mov eax, dword [esp + 0x84]
mov dword [edx + 0x64], eax
mov eax, dword [esp + 0x80]
mov dword [edx + 0x60], eax
mov eax, dword [esp + 0x1c]
mov dword [edx + 0x48], ebx
mov dword [edx + 0x4c], eax
mov dword [edx + 0x68], 0
call fcn.00550ab0
test eax, eax
je 0x5634b3
mov edx, eax
jmp 0x5634b5
mov ecx, esi
mov dword [esi + 0x44], 0
mov dword [esi + 0x40], 3
call fcn.0055eed8
mov edx, dword [esp + 0x11c]
mov ecx, esi
call fcn.0055ef69
jmp 0x5637ab
mov cl, 1
xor edx, edx
mov dword [esi + 0x44], 0
mov dword [esi + 0x40], 2
mov byte [esi + 0x48], cl
mov byte [esi + 0x49], 0
mov dword [esi + 0x50], edx
mov dword [esi + 0x54], eax
mov eax, dword [esp + 0x18]
lea ebx, [esp + 0x87c]
lea edx, [esp + 0x8b8]
mov ecx, 0xe
mov edi, ebx
mov esi, edx
add al, al
mov dword [esp + 0x18], eax
rep movsd dword es:[edi], dword [esi]
movzx ecx, word [edx + 0x38]
mov edi, dword [esp + 0xc]
mov edx, dword [esp + 0x14]
mov word [ebx + 0x38], cx
mov ebx, dword [esp + 0xc0]
mov ecx, dword [esp + 0x1c]
jmp 0x563433
mov ecx, edi
push 0x7f4ef4
call fcn.006521f0
add esp, 4
ud2
mov ecx, ebx
mov edx, esi
push 0x7f4f04
jmp 0x5637f5
mov ecx, esi
push 0x7f4e80
jmp 0x5637f5
mov edx, eax
push 0x752cdc
jmp 0x56382e
mov ecx, eax
push 0x752cdc
jmp 0x56383e
mov ecx, edx
mov edx, eax
push 0x752ccc
call fcn.006524b0
jmp 0x5637fa
mov ecx, eax
mov edx, esi
push 0x752ccc
call fcn.00652260
jmp 0x5637fa
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_std_src_syncmpmclist.rs
mov edx, 0x2b
push 0x752068
call fcn.006522d0
jmp 0x5637fa
mov ecx, str.header_map_at_capacity
mov edx, 0x16
push 0x7f4ea8
call fcn.00659073
jmp 0x5637fa
mov ecx, str.reserve_overflow_N
mov edx, 0x10
push 0x751a4c
call fcn.00652640
jmp 0x5637fa
mov edx, 0x64
push 0x752cbc
jmp 0x56383e
mov ecx, 4
mov edx, 0x10
jmp 0x5639fc
mov edx, 0x64
push 0x752cac
jmp 0x56383e
mov ecx, str.header_map_reserve_overflowed
mov edx, 0x1d
push 0x751ab0
jmp 0x56386a
mov dword [esp + 0x108], eax
lea eax, [esp + 0xf8]
lea ecx, [esp + 0x108]
lea edx, [esp + 0x80]
mov dword [esp + 0x80], eax
mov eax, 0x42c77c
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], eax
lea ecx, [esp + 0x200]
mov eax, 2
mov dword [ecx], str.cannot_advance_past__remaining_:___
mov dword [ecx + 4], eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 8], edx
mov edx, 0x7cb7f8
mov dword [ecx + 0xc], eax
jmp 0x5639c7
mov ecx, str.header_map_reserve_over_max_capacity_N
mov edx, 0x24
push 0x751a80
jmp 0x56386a
mov ecx, 4
mov edx, 0x120
jmp 0x5639fc
ud2
mov ecx, 8
mov edx, 0x40
jmp 0x5639fc
mov edx, dword [esp + 0x20]
push 0x7f4ee4
call fcn.00652180
jmp 0x5637fa
mov dword [esp + 0x80], eax
lea eax, [esp + 0x968]
lea ecx, [esp + 0x120]
lea edx, [esp + 0x80]
mov dword [eax], ecx
mov ecx, 0x42c77c
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov dword [eax + 0xc], ecx
lea ecx, [esp + 0x200]
mov edx, 2
mov dword [ecx], str.cannot_advance_past__remaining_:___
mov dword [ecx + 4], edx
mov dword [ecx + 0x10], 0
mov dword [ecx + 8], eax
mov dword [ecx + 0xc], edx
mov edx, 0x7cb868
call fcn.00652150
ud2
mov ecx, 4
mov edx, 0x30
jmp 0x5639fc
mov ecx, 4
mov edx, 0x1c
jmp 0x5639fc
mov ecx, 8
mov edx, 0x70
jmp 0x5639fc
mov ecx, 4
mov edx, 0x18
call fcn.00651860
ud2
push 0x7514f0
jmp 0x56396a
push 0x75165c
jmp 0x56383e