Function at 0x45e1e0
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x54f1ac
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x148
mov eax, dword [0x5bd200]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, edx
mov dword [ebp - 0xfc], esi
xorps xmm0, xmm0
movups xmmword [ebp - 0x7c], xmm0
mov dword [ebp - 0x74], 0
movq qword [ebp - 0x6c], xmm0
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x70], 0
mov byte [ebp - 0x68], 1
push 1
push str.__
push ecx
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 1
call fcn.00408cb0
mov dword [ebp - 4], 2
cmp dword [ebp - 0x7c], 6
je 0x45e290
mov byte [ebp - 0xed], 0
jmp 0x460dd5
xorps xmm0, xmm0
mov dword [ebp - 0x100], 0
movq qword [ebp - 0x108], xmm0
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x108], 0
mov byte [ebp - 0x100], 1
mov byte [ebp - 4], 3
movq qword [ebp - 0x2c], xmm0
push 2
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
call fcn.0053905f
xor ecx, ecx
mov dword [ebp - 0xf4], eax
add esp, 4
mov dword [ebp - 0x2c], eax
mov byte [ebp - 0x24], 1
mov word [eax], cx
mov byte [ebp - 4], 4
xorps xmm0, xmm0
mov edx, dword [ebp - 0x74]
xor esi, esi
movq qword [ebp - 0x20], xmm0
mov dword [ebp - 0x18], ecx
mov edi, dword [edx + 8]
test edi, edi
je 0x45e31b
cmp word [edi], si
je 0x45e31b
inc esi
cmp word [edi + esi*2], 0
jne 0x45e313
mov ecx, 2
mov dword [ebp - 0x1c], esi
lea eax, [esi + 1]
mul ecx
mov ecx, 0xffffffff
cmovb eax, ecx
push eax
call fcn.0053905f
add esp, 4
mov dword [ebp - 0x20], eax
test esi, esi
jle 0x45e360
mov ecx, eax
sub edi, eax
mov edx, esi
nop word [eax + eax]
mov ax, word [ecx + edi]
lea ecx, [ecx + 2]
mov word [ecx - 2], ax
sub edx, 1
jne 0x45e350
mov edi, dword [ebp - 0x20]
xor eax, eax
mov byte [ebp - 0x18], 1
mov word [edi + esi*2], ax
mov byte [ebp - 4], 5
push 0x204
mov dword [ebp - 0xe4], 0x101
mov dword [ebp - 0x104], eax
call fcn.0053905f
xor ecx, ecx
mov dword [ebp - 0x108], eax
add esp, 4
mov word [eax + 0x202], cx
mov word [eax], cx
lea ecx, [ebp - 0xe4]
push ecx
push eax
call dword [0x556090]
mov ecx, dword [ebp - 0xf4]
xor eax, eax
mov dword [ebp - 0xf8], eax
cmp word [ecx], ax
je 0x45e3cf
inc eax
cmp word [ecx + eax*2], 0
jne 0x45e3c1
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0x28], eax
test esi, esi
jne 0x45e3ed
cmp word [edi], si
je 0x45e3e8
nop dword [eax + eax]
inc esi
cmp word [edi + esi*2], 0
jne 0x45e3e0
mov dword [ebp - 0x1c], esi
test esi, esi
setg byte [ebp - 0x18]
test esi, esi
jle 0x45e41a
lea eax, [esi*2 - 2]
nop dword [eax]
cmp word [edi + eax], 0x5c
lea ecx, [edi + eax]
jne 0x45e41a
dec esi
xor edx, edx
sub eax, 2
mov dword [ebp - 0x1c], esi
mov word [ecx], dx
test esi, esi
jne 0x45e400
push 0
push 1
push 0xffffffffffffffff
push 1
push 0x575ca8
lea ecx, [ebp - 0x20]
call fcn.00406ef0
cmp eax, 2
jle 0x45e46f
mov edx, dword [ebp - 0x20]
lea ecx, [eax - 1]
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x45e45b
test edx, edx
je 0x45e458
cmp word [edx], ax
je 0x45e458
nop word [eax + eax]
inc eax
cmp word [edx + eax*2], 0
jne 0x45e450
mov dword [ebp - 0x1c], eax
cmp eax, ecx
setge byte [ebp - 0x18]
jl 0x45e46f
cmovl ecx, eax
xor eax, eax
mov dword [ebp - 0x1c], ecx
mov word [edx + ecx*2], ax
call fcn.00409560
movsd xmm1, qword [0x5ab090]
comisd xmm1, xmm0
jbe 0x45edb1
xorps xmm0, xmm0
movups xmmword [ebp - 0x60], xmm0
mov dword [ebp - 0x58], 0
movq qword [ebp - 0x50], xmm0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x54], 0
mov byte [ebp - 0x4c], 1
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x60]
mov esi, dword [ebp - 0x74]
push 1
push 0x575dbc
push dword [esi + 0x10]
call fcn.00408cb0
xorps xmm0, xmm0
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x40], 0
movq qword [ebp - 0x38], xmm0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x3c], 0
mov byte [ebp - 0x34], 1
push 1
push 0x576e9c
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x48]
push dword [esi + 0x14]
call fcn.00408cb0
mov byte [ebp - 4], 0xb
cmp dword [ebp - 0x60], 3
jne 0x45ed61
mov edi, dword [ebp - 0x48]
cmp edi, 2
jb 0x45ed61
mov dword [ebp - 0xc0], 0
lea eax, [ebp - 0xc0]
push eax
push 0x5aaf54
push 1
push 0
push 0x5aaf44
call dword [0x556888]
test eax, eax
jns 0x45e5c2
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45e572
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45e582
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x45e592
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45e5a2
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x460957
push eax
call fcn.00538a53
add esp, 4
mov byte [ebp - 0xed], 0
jmp 0x460da4
mov dword [ebp - 0xb0], 0
mov byte [ebp - 4], 0xe
lea edx, [ebp - 0xb0]
mov eax, dword [ebp - 0xc0]
push edx
push 0x5aaf84
push dword [esi]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x18]
test eax, eax
js 0x45e695
mov eax, dword [ebp - 0xb0]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x10]
test eax, eax
jns 0x45e5f2
mov eax, dword [ebp - 0xb0]
push 0x2000
push eax
mov ecx, dword [eax]
call dword [ecx + 0x70]
test eax, eax
jns 0x45e734
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45e631
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45e645
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45e655
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x45e665
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45e675
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x460957
push eax
call fcn.00538a53
add esp, 4
mov byte [ebp - 0xed], 0
jmp 0x460da4
mov eax, dword [ebp - 0xc0]
lea edx, [ebp - 0xb0]
push edx
push 0x5aaf84
push 0x5aaf14
push dword [esi]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
test eax, eax
jns 0x45e604
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45e6d0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45e6e4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45e6f4
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x45e704
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45e714
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x460957
push eax
call fcn.00538a53
add esp, 4
mov byte [ebp - 0xed], 0
jmp 0x460da4
mov eax, dword [ebp - 0xb0]
push dword [esi + 8]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x80]
test eax, eax
jns 0x45e7c2
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45e75e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x14
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45e772
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45e782
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x45e792
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45e7a2
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x460957
push eax
call fcn.00538a53
add esp, 4
mov byte [ebp - 0xed], 0
jmp 0x460da4
mov eax, dword [ebp - 0xb0]
push dword [esi + 0xc]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x88]
test eax, eax
jns 0x45e850
mov byte [ebp - 4], 0x15
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45e7ec
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x16
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45e800
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45e810
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x45e820
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45e830
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x460957
push eax
call fcn.00538a53
add esp, 4
mov byte [ebp - 0xed], 0
jmp 0x460da4
mov eax, dword [ebp - 0xb0]
push dword [esi + 4]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x48]
mov eax, dword [ebp - 0xb0]
push 0x1b7740
push eax
mov ecx, dword [eax]
call dword [ecx + 0xa8]
mov edx, dword [ebp - 0x20]
test edx, edx
jne 0x45e891
push 2
call fcn.0053905f
add esp, 4
mov dword [ebp - 0x20], eax
xor ecx, ecx
mov edx, eax
mov dword [ebp - 0x1c], ecx
mov word [eax], cx
mov eax, dword [ebp - 0xb0]
push edx
push eax
mov byte [ebp - 0x18], 1
mov ecx, dword [eax]
call dword [ecx + 0x90]
mov edx, dword [ebp - 0xf4]
cmp edx, 0x57b0e0
je 0x45e8d6
mov esi, 0x57b0e0
mov eax, edx
sub eax, esi
mov dword [ebp - 0x64], eax
nop
movzx eax, word [eax + esi]
mov ecx, eax
test ax, ax
jne 0x45e90a
cmp word [esi], ax
jne 0x45e90f
mov edx, dword [ebp - 0xf4]
push edx
call fcn.00538a53
add esp, 4
mov byte [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
push 2
call fcn.0053905f
mov edx, eax
mov byte [ebp - 0x24], 1
add esp, 4
mov dword [ebp - 0xf4], edx
xor eax, eax
mov dword [ebp - 0x2c], edx
mov word [edx], ax
jmp 0x45e966
cmp ax, word [esi]
je 0x45e955
xor edx, edx
cmp dx, ax
jne 0x45e91e
mov dword [ebp - 0xdc], edx
jmp 0x45e930
push ecx
call fcn.0053d09f
movzx eax, ax
add esp, 4
mov dword [ebp - 0xdc], eax
movzx eax, word [esi]
xor edx, edx
mov ecx, eax
cmp dx, ax
jne 0x45e940
xor eax, eax
jmp 0x45e94c
push ecx
call fcn.0053d09f
add esp, 4
movzx eax, ax
cmp word [ebp - 0xdc], ax
jne 0x45e960
mov eax, dword [ebp - 0x64]
add esi, 2
jmp 0x45e8c0
mov edx, dword [ebp - 0xf4]
cmp dword [ebp - 0xf8], 0
je 0x45e982
mov eax, dword [ebp - 0xb0]
push 0
push edx
push eax
mov ecx, dword [eax]
mov byte [ebp - 0x24], 1
call dword [ecx + 0x78]
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xd8], 0
mov byte [ebp - 4], 0x17
lea edx, [ebp - 0xd8]
mov eax, dword [ebp - 0xb0]
push edx
lea edx, [ebp - 0xc8]
push edx
mov ecx, dword [eax]
push eax
call dword [ecx + 0xc]
test eax, eax
jns 0x45ea48
mov byte [ebp - 4], 0x18
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x45e9d0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x19
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45e9e4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45e9f8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45ea08
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x45ea18
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45ea28
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x460957
push eax
call fcn.00538a53
add esp, 4
mov byte [ebp - 0xed], 0
jmp 0x460da4
push 0x30
lea eax, [ebp - 0xac]
push 0
push eax
call fcn.0053a920
mov ecx, dword [ebp - 0xfc]
add esp, 0xc
mov eax, 0x30
mov word [ebp - 0xac], ax
test ecx, ecx
jne 0x45ea79
mov dword [ebp - 0x8c], ecx
jmp 0x45eaa5
jle 0x45ea8e
mov dword [ebp - 0x8c], 1
mov word [ebp - 0x88], cx
jmp 0x45eaa5
mov eax, dword [ebp - 0x8c]
cmp ecx, 0xffffffff
mov edx, 7
cmove eax, edx
mov dword [ebp - 0x8c], eax
mov esi, dword [ebp - 0x58]
push dword [esi]
call fcn.0053cfac
add esp, 4
mov word [ebp - 0xa8], ax
push dword [esi + 4]
call fcn.0053cfac
add esp, 4
mov word [ebp - 0xa6], ax
push dword [esi + 8]
call fcn.0053cfac
mov esi, dword [ebp - 0x40]
add esp, 4
mov word [ebp - 0xa4], ax
test edi, edi
jne 0x45eae8
xor eax, eax
jmp 0x45eaf7
mov eax, 1
test edi, edi
cmove edi, eax
mov eax, dword [esi]
mov dword [ebp - 0x48], edi
push eax
call fcn.0053cfac
add esp, 4
mov word [ebp - 0x9c], ax
test edi, edi
jne 0x45eb0f
xor eax, eax
jmp 0x45eb34
cmp edi, 1
ja 0x45eb26
lea ecx, [edi - 1]
cmp edi, ecx
ja 0x45eb21
lea eax, [ecx + 1]
mov dword [ebp - 0x48], eax
mov eax, dword [esi + ecx*4]
jmp 0x45eb34
mov eax, 2
cmovbe edi, eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x48], edi
push eax
call fcn.0053cfac
mov word [ebp - 0x9a], ax
lea edx, [ebp - 0xac]
mov eax, dword [ebp - 0xd8]
add esp, 4
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0xc]
test eax, eax
jns 0x45ebe8
mov byte [ebp - 4], 0x1b
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x45eb73
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45eb87
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1d
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45eb9b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45ebab
push eax
call fcn.00538a53
add esp, 4
test esi, esi
je 0x45ebb8
push esi
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45ebc8
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x460957
push eax
call fcn.00538a53
add esp, 4
mov byte [ebp - 0xed], 0
jmp 0x460da4
mov dword [ebp - 0xd0], 0
mov byte [ebp - 4], 0x1e
lea edx, [ebp - 0xd0]
mov eax, dword [ebp - 0xb0]
push edx
push 0x556910
push eax
mov ecx, dword [eax]
call dword [ecx]
test eax, eax
jns 0x45ecb2
mov byte [ebp - 4], 0x1f
mov eax, dword [ebp - 0xd0]
test eax, eax
je 0x45ec29
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x20
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x45ec3d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x21
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45ec51
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x22
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45ec65
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45ec75
push eax
call fcn.00538a53
add esp, 4
test esi, esi
je 0x45ec82
push esi
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45ec92
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x460957
push eax
call fcn.00538a53
add esp, 4
mov byte [ebp - 0xed], 0
jmp 0x460da4
mov eax, dword [ebp - 0xd0]
push 1
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x18]
test eax, eax
sete byte [ebp - 0xed]
mov byte [ebp - 4], 0x23
mov eax, dword [ebp - 0xd0]
test eax, eax
je 0x45ecdf
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x24
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x45ecf3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x25
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45ed07
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x26
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45ed1b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45ed2b
push eax
call fcn.00538a53
add esp, 4
test esi, esi
je 0x45ed38
push esi
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45ed48
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x460da4
push eax
call fcn.00538a53
add esp, 4
jmp 0x460da4
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45ed71
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x45ed81
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45ed91
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x460957
push eax
call fcn.00538a53
add esp, 4
mov byte [ebp - 0xed], 0
jmp 0x460da4
mov dword [ebp - 0xb8], 0
lea eax, [ebp - 0xb8]
push eax
push 0x5703a0
push 1
push 0
push 0x5703b0
call dword [0x556888]
test eax, eax
jns 0x45ede3
mov byte [ebp - 4], 0x28
jmp 0x460947
mov esi, dword [0x556458]
lea eax, [ebp - 0x148]
push eax
call esi
movups xmm0, xmmword [ebp - 0x148]
lea eax, [ebp - 0x138]
push eax
movups xmmword [ebp - 0x158], xmm0
call esi
movups xmm0, xmmword [ebp - 0x138]
lea eax, [ebp - 0x118]
push eax
movups xmmword [ebp - 0x58], xmm0
call esi
movups xmm0, xmmword [ebp - 0x118]
lea eax, [ebp - 0x128]
push eax
movups xmmword [ebp - 0x40], xmm0
call esi
mov byte [ebp - 4], 0x2c
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x158]
mov eax, dword [ebp - 0xb8]
mov ecx, esp
sub esp, 0x10
mov edx, dword [eax]
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x58]
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x40]
movups xmmword [ecx], xmm0
mov ecx, esp
movups xmm0, xmmword [ebp - 0x128]
push eax
movups xmmword [ecx], xmm0
call dword [edx + 0x28]
mov esi, dword [0x556464]
shr eax, 0x1f
mov dword [ebp - 0xc8], eax
lea eax, [ebp - 0x128]
push eax
call esi
lea eax, [ebp - 0x118]
push eax
call esi
lea eax, [ebp - 0x138]
push eax
call esi
lea eax, [ebp - 0x148]
push eax
call esi
cmp byte [ebp - 0xc8], 0
je 0x45eebc
mov byte [ebp - 4], 0x2d
jmp 0x460947
mov dword [ebp - 0xbc], 0
mov byte [ebp - 4], 0x2e
xorps xmm0, xmm0
mov eax, dword [ebp - 0x74]
movq qword [ebp - 0x114], xmm0
mov dword [ebp - 0x10c], 0
mov ecx, dword [eax + 0x10]
mov esi, dword [eax + 0x14]
xor eax, eax
mov dword [ebp - 0xec], ecx
mov dword [ebp - 0xd0], esi
test ecx, ecx
je 0x45ef08
cmp word [ecx], ax
je 0x45ef08
nop
inc eax
cmp word [ecx + eax*2], 0
jne 0x45ef00
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp word [ecx*2 + 0x57b0f8], 0
jne 0x45ef10
add ecx, eax
test esi, esi
je 0x45ef3a
xor eax, eax
cmp word [esi], ax
je 0x45ef38
nop dword [eax]
inc eax
cmp word [esi + eax*2], 0
jne 0x45ef30
add ecx, eax
lea eax, [ecx + 1]
mov dword [ebp - 0xc8], ecx
mov ecx, 2
mul ecx
mov ecx, 0xffffffff
cmovb eax, ecx
push eax
call fcn.0053905f
mov edx, dword [ebp - 0xec]
mov edi, eax
add esp, 4
mov dword [ebp - 0xe8], edi
mov ecx, edi
test edx, edx
je 0x45ef95
movzx eax, word [edx]
mov esi, eax
mov dword [ebp - 0xec], esi
test ax, ax
je 0x45ef95
movzx esi, ax
sub edx, edi
mov word [ecx], si
add ecx, 2
movzx eax, word [edx + ecx]
mov esi, eax
test ax, ax
jne 0x45ef84
mov esi, 0x57b0f8
mov edx, 0x54
sub esi, ecx
mov word [ecx], dx
add ecx, 2
movzx eax, word [esi + ecx]
mov edx, eax
test ax, ax
jne 0x45efa1
mov esi, dword [ebp - 0xd0]
test esi, esi
je 0x45efd7
movzx eax, word [esi]
mov edx, eax
test ax, ax
je 0x45efd7
mov word [ecx], ax
lea esi, [esi + 2]
movzx eax, word [esi]
add ecx, 2
test ax, ax
jne 0x45efc6
xor eax, eax
mov dword [ebp - 0x114], edi
mov word [ecx], ax
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0x110], eax
mov byte [ebp - 0x10c], 1
push 0xc
mov byte [ebp - 4], 0x2f
call fcn.00538c66
mov esi, eax
add esp, 4
mov dword [ebp - 0xec], esi
mov byte [ebp - 4], 0x30
test esi, esi
je 0x45f046
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
push 0x575ca8
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [0x556460]
mov dword [esi], eax
test eax, eax
je 0x460e1b
jmp 0x45f048
xor esi, esi
mov byte [ebp - 4], 0x2f
mov dword [ebp - 0xec], esi
test esi, esi
je 0x460e1b
mov byte [ebp - 4], 0x31
lea edx, [ebp - 0xbc]
mov eax, dword [ebp - 0xb8]
push edx
push dword [esi]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x1c]
shr eax, 0x1f
mov dword [ebp - 0xec], eax
or eax, 0xffffffff
mov byte [ebp - 4], 0x2f
lock xadd dword [esi + 8], eax
dec eax
jne 0x45f0c0
mov eax, dword [esi]
test eax, eax
je 0x45f09e
push eax
call dword [0x55645c]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45f0b5
push eax
call fcn.00538a53
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.00539051
add esp, 8
cmp byte [ebp - 0xec], 0
je 0x45f0ef
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0x32
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45f0e6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x33
jmp 0x460947
mov eax, dword [ebp - 0x74]
push 0xc
mov eax, dword [eax]
mov dword [ebp - 0xc8], eax
call fcn.00538c66
mov esi, eax
add esp, 4
mov dword [ebp - 0xec], esi
mov byte [ebp - 4], 0x34
test esi, esi
je 0x45f150
push dword [ebp - 0xc8]
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [0x556460]
mov dword [esi], eax
test eax, eax
jne 0x45f152
cmp dword [ebp - 0xc8], eax
jne 0x460e25
jmp 0x45f152
xor esi, esi
mov byte [ebp - 4], 0x2f
mov dword [ebp - 0xec], esi
test esi, esi
je 0x460e1b
mov byte [ebp - 4], 0x35
mov eax, dword [ebp - 0xbc]
push 0
push dword [esi]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x3c]
or ecx, 0xffffffff
mov eax, ecx
lock xadd dword [esi + 8], eax
dec eax
jne 0x45f1ba
mov eax, dword [esi]
test eax, eax
je 0x45f198
push eax
call dword [0x55645c]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45f1af
push eax
call fcn.00538a53
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.00539051
add esp, 8
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xc4], 0
mov byte [ebp - 4], 0x37
lea edx, [ebp - 0xb4]
mov eax, dword [ebp - 0xb8]
push edx
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x24]
test eax, eax
jns 0x45f239
mov byte [ebp - 4], 0x38
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45f1ff
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x39
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45f213
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0x3a
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45f230
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x3b
jmp 0x460947
mov eax, dword [ebp - 0xb4]
lea edx, [ebp - 0xc4]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x1c]
test eax, eax
jns 0x45f29e
mov byte [ebp - 4], 0x3c
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45f264
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x3d
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45f278
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0x3e
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45f295
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x3f
jmp 0x460947
push 0xc
mov byte [ebp - 0x100], 1
call fcn.00538c66
mov esi, eax
add esp, 4
mov dword [ebp - 0xec], esi
mov byte [ebp - 4], 0x40
test esi, esi
je 0x45f2f3
push dword [ebp - 0x108]
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [0x556460]
mov dword [esi], eax
test eax, eax
je 0x460e2f
jmp 0x45f2f5
xor esi, esi
mov byte [ebp - 4], 0x37
mov dword [ebp - 0xec], esi
test esi, esi
je 0x460e1b
mov byte [ebp - 4], 0x41
mov eax, dword [ebp - 0xc4]
push dword [esi]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x28]
shr eax, 0x1f
mov dword [ebp - 0xec], eax
or eax, 0xffffffff
mov byte [ebp - 4], 0x37
lock xadd dword [esi + 8], eax
dec eax
jne 0x45f366
mov eax, dword [esi]
test eax, eax
je 0x45f344
push eax
call dword [0x55645c]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45f35b
push eax
call fcn.00538a53
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.00539051
add esp, 8
cmp byte [ebp - 0xec], 0
je 0x45f3bd
mov byte [ebp - 4], 0x42
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45f383
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x43
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45f397
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0x44
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45f3b4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x45
jmp 0x460947
mov eax, dword [ebp - 0xc4]
mov edx, dword [ebp - 0x74]
mov ecx, dword [eax]
push dword [edx + 4]
push eax
call dword [ecx + 0x20]
test eax, eax
jns 0x45f421
mov byte [ebp - 4], 0x46
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45f3e7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x47
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45f3fb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0x48
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45f418
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x49
jmp 0x460947
mov dword [ebp - 0xb0], 0
mov byte [ebp - 4], 0x4a
lea edx, [ebp - 0xb0]
mov eax, dword [ebp - 0xb4]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x3c]
test eax, eax
jns 0x45f4a8
mov byte [ebp - 4], 0x4b
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45f45a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x4c
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45f46e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x4d
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45f482
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0x4e
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45f49f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x4f
jmp 0x460947
push 0xc
call fcn.00538c66
mov esi, eax
add esp, 4
mov dword [ebp - 0xec], esi
mov byte [ebp - 4], 0x50
test esi, esi
je 0x45f4f5
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
push 0x57b0fc
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [0x556460]
mov dword [esi], eax
test eax, eax
je 0x460e39
jmp 0x45f4f7
xor esi, esi
mov byte [ebp - 4], 0x4a
mov dword [ebp - 0xec], esi
test esi, esi
je 0x460e1b
mov byte [ebp - 4], 0x51
mov eax, dword [ebp - 0xb0]
push dword [esi]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x20]
shr eax, 0x1f
mov dword [ebp - 0xec], eax
or eax, 0xffffffff
mov byte [ebp - 4], 0x4a
lock xadd dword [esi + 8], eax
dec eax
jne 0x45f568
mov eax, dword [esi]
test eax, eax
je 0x45f546
push eax
call dword [0x55645c]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45f55d
push eax
call fcn.00538a53
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.00539051
add esp, 8
cmp byte [ebp - 0xec], 0
je 0x45f5d3
mov byte [ebp - 4], 0x52
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45f585
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x53
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45f599
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x54
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45f5ad
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0x55
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45f5ca
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x56
jmp 0x460947
mov eax, dword [ebp - 0xb0]
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0x48]
test eax, eax
jns 0x45f647
mov byte [ebp - 4], 0x57
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45f5f9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x58
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45f60d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x59
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45f621
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0x5a
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45f63e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x5b
jmp 0x460947
cmp dword [ebp - 0xf8], 0
je 0x45f95d
push 0
push 1
push 1
push 0
push 0x575ca8
lea ecx, [ebp - 0x2c]
call fcn.00406ef0
test eax, eax
jne 0x45f78d
mov eax, dword [ebp - 0x2c]
push 0x102
mov dword [ebp - 0xc8], 0x80
mov dword [ebp - 0xec], eax
mov dword [ebp - 0x28], 0
call fcn.0053905f
mov esi, eax
add esp, 4
xor eax, eax
mov dword [ebp - 0x2c], esi
mov word [esi + 0x100], ax
mov word [esi], ax
mov eax, dword [ebp - 0xec]
test eax, eax
je 0x45f6bc
push eax
call fcn.00538a53
add esp, 4
lea eax, [ebp - 0xc8]
push eax
push esi
call dword [0x556368]
xor eax, eax
mov byte [ebp - 0x24], 0
cmp word [esi], ax
je 0x45f6e2
inc eax
cmp word [esi + eax*2], 0
jne 0x45f6d5
mov dword [ebp - 0x28], eax
jmp 0x45f6e7
mov dword [ebp - 0x28], eax
xor eax, eax
xor ecx, ecx
nop dword [eax]
inc ecx
cmp word [ecx*2 + 0x575ca8], 0
jne 0x45f6f0
add eax, ecx
mov ecx, 2
mov dword [ebp - 0xec], eax
inc eax
mul ecx
mov ecx, 0xffffffff
cmovb eax, ecx
push eax
call fcn.0053905f
mov dword [ebp - 0xf4], eax
mov ecx, eax
movzx eax, word [esi]
add esp, 4
mov edx, eax
test ax, ax
je 0x45f744
mov edi, esi
sub edi, ecx
mov word [ecx], dx
add ecx, 2
movzx eax, word [edi + ecx]
mov edx, eax
test ax, ax
jne 0x45f733
mov edi, 0x575ca8
mov edx, 0x5c
sub edi, ecx
mov word [ecx], dx
lea ecx, [ecx + 2]
movzx eax, word [edi + ecx]
mov edx, eax
test ax, ax
jne 0x45f750
xor eax, eax
push esi
mov word [ecx], ax
call fcn.00538a53
mov esi, dword [ebp - 0xf4]
add esp, 4
mov eax, dword [ebp - 0xec]
mov edi, dword [ebp - 0xe8]
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x28], eax
mov byte [ebp - 0x24], 1
jmp 0x45f796
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0xf4], esi
mov eax, dword [ebp - 0xb0]
push 3
push eax
mov ecx, dword [eax]
call dword [ecx + 0x38]
test eax, eax
jns 0x45f80a
mov byte [ebp - 4], 0x5c
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45f7bc
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x5d
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45f7d0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x5e
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45f7e4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0x5f
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45f801
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x60
jmp 0x460947
test esi, esi
jne 0x45f829
push 2
call fcn.0053905f
add esp, 4
mov dword [ebp - 0xf4], eax
xor ecx, ecx
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], ecx
mov word [eax], cx
push 0xc
mov byte [ebp - 0x24], 1
call fcn.00538c66
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 0x61
test esi, esi
je 0x45f883
push dword [ebp - 0xf4]
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [0x556460]
mov dword [esi], eax
test eax, eax
jne 0x45f885
cmp dword [ebp - 0xf4], eax
jne 0x460e43
jmp 0x45f885
xor esi, esi
mov byte [ebp - 4], 0x4a
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x460e1b
mov byte [ebp - 4], 0x62
mov eax, dword [ebp - 0xb0]
push dword [esi]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x30]
shr eax, 0x1f
mov dword [ebp - 0xe8], eax
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
dec eax
jne 0x45f8f2
mov eax, dword [esi]
test eax, eax
je 0x45f8d0
push eax
call dword [0x55645c]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45f8e7
push eax
call fcn.00538a53
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.00539051
add esp, 8
cmp byte [ebp - 0xe8], 0
je 0x45f95d
mov byte [ebp - 4], 0x63
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45f90f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x64
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45f923
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x65
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45f937
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0x66
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45f954
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x67
jmp 0x460947
mov dword [ebp - 0xcc], 0
mov byte [ebp - 4], 0x68
lea edx, [ebp - 0xcc]
mov eax, dword [ebp - 0xb4]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x2c]
test eax, eax
jns 0x45f9f8
mov byte [ebp - 4], 0x69
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45f996
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6a
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45f9aa
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6b
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45f9be
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6c
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45f9d2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0x6d
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45f9ef
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6e
jmp 0x460947
mov eax, dword [ebp - 0xcc]
push 0xffffffffffffffff
push eax
mov ecx, dword [eax]
call dword [ecx + 0x58]
test eax, eax
jns 0x45fa80
mov byte [ebp - 4], 0x6f
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45fa1e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x70
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45fa32
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x71
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45fa46
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x72
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45fa5a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0x73
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45fa77
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x74
jmp 0x460947
mov eax, dword [ebp - 0xcc]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x48]
mov eax, dword [ebp - 0xcc]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov dword [ebp - 0xc0], 0
mov byte [ebp - 4], 0x75
lea edx, [ebp - 0xc0]
mov eax, dword [ebp - 0xb4]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x24]
test eax, eax
jns 0x45fb4f
mov byte [ebp - 4], 0x76
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45fad9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x77
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45faed
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x78
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45fb01
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x79
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45fb15
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7a
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45fb29
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0x7b
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45fb46
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7c
jmp 0x460947
mov dword [ebp - 0xd4], 0
mov eax, dword [ebp - 0xfc]
mov byte [ebp - 4], 0x7d
test eax, eax
jne 0x45fb6c
lea edx, [eax + 1]
jmp 0x45fb86
jle 0x45fb75
mov edx, 2
jmp 0x45fb86
mov edx, dword [ebp - 0xe8]
cmp eax, 0xffffffff
mov ecx, 9
cmove edx, ecx
mov eax, dword [ebp - 0xc0]
lea esi, [ebp - 0xd4]
push esi
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x28]
test eax, eax
jns 0x45fc40
mov byte [ebp - 4], 0x7e
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x45fbb6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7f
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45fbca
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x80
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45fbde
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x81
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45fbf2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x82
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45fc06
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x83
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45fc1a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0x84
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45fc37
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x85
jmp 0x460947
push 0xc
call fcn.00538c66
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 0x86
test esi, esi
je 0x45fc8d
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
push 0x57b114
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [0x556460]
mov dword [esi], eax
test eax, eax
je 0x460e4d
jmp 0x45fc8f
xor esi, esi
mov byte [ebp - 4], 0x7d
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x460e1b
mov byte [ebp - 4], 0x87
mov eax, dword [ebp - 0xd4]
push dword [esi]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x24]
shr eax, 0x1f
mov dword [ebp - 0xe8], eax
or eax, 0xffffffff
mov byte [ebp - 4], 0x7d
lock xadd dword [esi + 8], eax
dec eax
jne 0x45fd00
mov eax, dword [esi]
test eax, eax
je 0x45fcde
push eax
call dword [0x55645c]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45fcf5
push eax
call fcn.00538a53
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.00539051
add esp, 8
cmp byte [ebp - 0xe8], 0
je 0x45fdab
mov byte [ebp - 4], 0x88
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x45fd21
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x89
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45fd35
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8a
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45fd49
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8b
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45fd5d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8c
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45fd71
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8d
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45fd85
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0x8e
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45fda2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8f
jmp 0x460947
push 0xc
mov byte [ebp - 0x10c], 1
call fcn.00538c66
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 0x90
test esi, esi
je 0x45fdfb
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
push edi
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [0x556460]
mov dword [esi], eax
test eax, eax
je 0x460e57
jmp 0x45fdfd
xor esi, esi
mov byte [ebp - 4], 0x7d
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x460e1b
mov byte [ebp - 4], 0x91
mov eax, dword [ebp - 0xd4]
push dword [esi]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x3c]
shr eax, 0x1f
mov dword [ebp - 0xe8], eax
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
dec eax
jne 0x45fe6a
mov eax, dword [esi]
test eax, eax
je 0x45fe48
push eax
call dword [0x55645c]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45fe5f
push eax
call fcn.00538a53
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.00539051
add esp, 8
cmp byte [ebp - 0xe8], 0
je 0x45ff15
mov byte [ebp - 4], 0x92
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x45fe8b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x93
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45fe9f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x94
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45feb3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x95
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45fec7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x96
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45fedb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x97
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45feef
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0x98
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45ff0c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x99
jmp 0x460947
mov esi, dword [ebp - 0xfc]
test esi, esi
jle 0x460018
mov dword [ebp - 0xd0], 0
mov byte [ebp - 4], 0x9a
lea edx, [ebp - 0xd0]
mov eax, dword [ebp - 0xd4]
push edx
push 0x570390
push eax
mov ecx, dword [eax]
call dword [ecx]
test eax, eax
jns 0x460002
mov byte [ebp - 4], 0x9b
mov eax, dword [ebp - 0xd0]
test eax, eax
je 0x45ff64
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9c
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x45ff78
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9d
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45ff8c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9e
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45ffa0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9f
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45ffb4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa0
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45ffc8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa1
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45ffdc
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0xa2
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45fff9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa3
jmp 0x460947
mov eax, dword [ebp - 0xd0]
push esi
push eax
mov ecx, dword [eax]
call dword [ecx + 0x54]
mov byte [ebp - 4], 0xa4
jmp 0x4602bd
cmp dword [ebp - 0xf8], 0
je 0x4602cd
cmp esi, 0xffffffff
jne 0x4602cd
mov dword [ebp - 0xd0], 0
mov byte [ebp - 4], 0xa5
lea edx, [ebp - 0xd0]
mov eax, dword [ebp - 0xd4]
push edx
push 0x5703c0
push eax
mov ecx, dword [eax]
call dword [ecx]
test eax, eax
jns 0x46010d
mov byte [ebp - 4], 0xa6
mov eax, dword [ebp - 0xd0]
test eax, eax
je 0x46006f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa7
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x460083
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa8
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x460097
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa9
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x4600ab
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xaa
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x4600bf
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xab
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x4600d3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xac
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x4600e7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0xad
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x460104
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xae
jmp 0x460947
cmp dword [ebp - 0xf4], 0
jne 0x460131
push 2
call fcn.0053905f
add esp, 4
mov dword [ebp - 0xf4], eax
xor ecx, ecx
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], ecx
mov word [eax], cx
push 0xc
mov byte [ebp - 0x24], 1
call fcn.00538c66
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 0xaf
test esi, esi
je 0x46018b
push dword [ebp - 0xf4]
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [0x556460]
mov dword [esi], eax
test eax, eax
jne 0x46018d
cmp dword [ebp - 0xf4], eax
jne 0x460e61
jmp 0x46018d
xor esi, esi
mov byte [ebp - 4], 0xa5
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x460e6b
mov byte [ebp - 4], 0xb0
mov eax, dword [ebp - 0xd0]
push dword [esi]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x5c]
shr eax, 0x1f
mov dword [ebp - 0xe8], eax
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
dec eax
jne 0x4601fa
mov eax, dword [esi]
test eax, eax
je 0x4601d8
push eax
call dword [0x55645c]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x4601ef
push eax
call fcn.00538a53
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.00539051
add esp, 8
cmp byte [ebp - 0xe8], 0
je 0x4602b9
mov byte [ebp - 4], 0xb1
mov eax, dword [ebp - 0xd0]
test eax, eax
je 0x46021b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb2
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x46022f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb3
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x460243
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb4
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x460257
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb5
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x46026b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb6
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x46027f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb7
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x460293
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0xb8
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x4602b0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb9
jmp 0x460947
mov byte [ebp - 4], 0xba
mov eax, dword [ebp - 0xd0]
test eax, eax
je 0x4602cd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xe0], 0
mov byte [ebp - 4], 0xbd
lea edx, [ebp - 0xd8]
mov eax, dword [ebp - 0xb4]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x44]
test eax, eax
jns 0x4603e4
mov byte [ebp - 4], 0xbe
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x46031e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xbf
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x460332
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc0
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x460346
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc1
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x46035a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc2
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x46036e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc3
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x460382
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc4
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x460396
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc5
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x4603aa
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc6
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x4603be
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0xc7
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x4603db
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc8
jmp 0x460947
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0xdc]
push edx
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x30]
test eax, eax
jns 0x4604db
mov byte [ebp - 4], 0xc9
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x460415
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xca
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x460429
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xcb
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x46043d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xcc
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x460451
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xcd
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x460465
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xce
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x460479
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xcf
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x46048d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd0
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x4604a1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd1
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x4604b5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0xd2
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x4604d2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd3
jmp 0x460947
mov eax, dword [ebp - 0xdc]
lea edx, [ebp - 0xe0]
push edx
push str.MbLk
push eax
mov ecx, dword [eax]
call dword [ecx]
test eax, eax
jns 0x4605d4
mov byte [ebp - 4], 0xd4
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x46050e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd5
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x460522
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd6
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x460536
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd7
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x46054a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd8
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x46055e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd9
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x460572
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xda
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x460586
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xdb
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x46059a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xdc
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x4605ae
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0xdd
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x4605cb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xde
jmp 0x460947
mov eax, dword [ebp - 0x74]
push 0xc
mov eax, dword [eax + 8]
mov dword [ebp - 0xc8], eax
call fcn.00538c66
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 0xdf
test esi, esi
je 0x460636
push dword [ebp - 0xc8]
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [0x556460]
mov dword [esi], eax
test eax, eax
jne 0x460638
cmp dword [ebp - 0xc8], eax
jne 0x460e75
jmp 0x460638
xor esi, esi
mov byte [ebp - 4], 0xbd
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x460e1b
mov byte [ebp - 4], 0xe0
mov eax, dword [ebp - 0xe0]
push dword [esi]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x2c]
shr eax, 0x1f
mov dword [ebp - 0xe8], eax
or eax, 0xffffffff
mov byte [ebp - 4], 0xbd
lock xadd dword [esi + 8], eax
dec eax
jne 0x4606a9
mov eax, dword [esi]
test eax, eax
je 0x460687
push eax
call dword [0x55645c]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x46069e
push eax
call fcn.00538a53
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.00539051
add esp, 8
cmp byte [ebp - 0xe8], 0
je 0x460790
mov byte [ebp - 4], 0xe1
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x4606ca
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe2
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x4606de
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe3
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x4606f2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe4
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x460706
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe5
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x46071a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe6
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x46072e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe7
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x460742
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe8
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x460756
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe9
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x46076a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0xea
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x460787
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xeb
jmp 0x460947
mov eax, dword [ebp - 0x74]
push 0xc
mov eax, dword [eax + 0xc]
mov dword [ebp - 0xc8], eax
call fcn.00538c66
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 0xec
test esi, esi
je 0x4607f2
push dword [ebp - 0xc8]
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [0x556460]
mov dword [esi], eax
test eax, eax
jne 0x4607f4
cmp dword [ebp - 0xc8], eax
jne 0x460e7f
jmp 0x4607f4
xor esi, esi
mov byte [ebp - 4], 0xbd
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x460e1b
mov byte [ebp - 4], 0xed
mov eax, dword [ebp - 0xe0]
push dword [esi]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x34]
shr eax, 0x1f
mov dword [ebp - 0xe8], eax
or eax, 0xffffffff
mov byte [ebp - 4], 0xbd
lock xadd dword [esi + 8], eax
dec eax
jne 0x460865
mov eax, dword [esi]
test eax, eax
je 0x460843
push eax
call dword [0x55645c]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x46085a
push eax
call fcn.00538a53
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.00539051
add esp, 8
cmp byte [ebp - 0xe8], 0
je 0x460963
mov byte [ebp - 4], 0xee
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x460886
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xef
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x46089a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf0
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x4608ae
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf1
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x4608c2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf2
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x4608d6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf3
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x4608ea
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf4
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x4608fe
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf5
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x460912
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf6
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x460926
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov byte [ebp - 4], 0xf7
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x460943
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf8
mov eax, dword [ebp - 0xb8]
test eax, eax
je 0x460957
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 0xed], 0
jmp 0x460da4
cmp dword [ebp - 0x20], 0
jne 0x46097e
push 2
call fcn.0053905f
add esp, 4
mov dword [ebp - 0x20], eax
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
mov word [eax], cx
push 0xc
mov byte [ebp - 0x18], 1
call fcn.00538c66
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 0xf9
test esi, esi
je 0x4609d2
push dword [ebp - 0x20]
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [0x556460]
mov dword [esi], eax
test eax, eax
jne 0x4609d4
cmp dword [ebp - 0x20], eax
jne 0x460e89
jmp 0x4609d4
xor esi, esi
mov byte [ebp - 4], 0xbd
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x460e1b
mov byte [ebp - 4], 0xfa
mov eax, dword [ebp - 0xe0]
push dword [esi]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x3c]
mov byte [ebp - 4], 0xbd
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
dec eax
jne 0x460a3c
mov eax, dword [esi]
test eax, eax
je 0x460a1a
push eax
call dword [0x55645c]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x460a31
push eax
call fcn.00538a53
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.00539051
add esp, 8
push 0xc
call fcn.00538c66
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 0xfb
test esi, esi
je 0x460a89
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
push 0x57b128
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [0x556460]
mov dword [esi], eax
test eax, eax
je 0x460e93
jmp 0x460a8b
xor esi, esi
mov byte [ebp - 4], 0xbd
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x460e1b
mov byte [ebp - 4], 0xfc
mov eax, dword [ebp - 0xe0]
push dword [esi]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x20]
or ecx, 0xffffffff
mov eax, ecx
lock xadd dword [esi + 8], eax
dec eax
jne 0x460af1
mov eax, dword [esi]
test eax, eax
je 0x460acf
push eax
call dword [0x55645c]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x460ae6
push eax
call fcn.00538a53
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.00539051
add esp, 8
mov dword [ebp - 0x64], 0
mov eax, 8
mov byte [ebp - 4], 0xfd
push 0x575cb0
mov word [ebp - 0x128], ax
call dword [0x556460]
mov dword [ebp - 0x120], eax
test eax, eax
je 0x460e9d
movups xmm0, xmmword [ebp - 0x128]
mov esi, dword [0x556458]
lea eax, [ebp - 0x138]
push eax
movups xmmword [ebp - 0x40], xmm0
call esi
movups xmm0, xmmword [ebp - 0x138]
lea eax, [ebp - 0x148]
push eax
movups xmmword [ebp - 0x58], xmm0
call esi
mov dword [ebp - 4], 0x100
mov eax, dword [ebp - 0x74]
movups xmm0, xmmword [ebp - 0x148]
push 0xc
mov eax, dword [eax]
movups xmmword [ebp - 0x158], xmm0
mov dword [ebp - 0xc8], eax
call fcn.00538c66
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 1
test esi, esi
je 0x460bc5
push dword [ebp - 0xc8]
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [0x556460]
mov dword [esi], eax
test eax, eax
jne 0x460bc7
cmp dword [ebp - 0xc8], eax
jne 0x460ea7
jmp 0x460bc7
xor esi, esi
mov byte [ebp - 4], 0
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x460eb1
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x64]
movups xmm0, xmmword [ebp - 0x40]
mov eax, dword [ebp - 0xbc]
push ecx
sub esp, 0x10
mov ecx, esp
mov edx, dword [eax]
push 3
sub esp, 0x10
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x58]
movups xmmword [ecx], xmm0
mov ecx, esp
movups xmm0, xmmword [ebp - 0x158]
push 6
push dword [ebp - 0xb4]
movups xmmword [ecx], xmm0
push dword [esi]
push eax
call dword [edx + 0x44]
test eax, eax
sete byte [ebp - 0xed]
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
dec eax
jne 0x460c69
mov eax, dword [esi]
test eax, eax
je 0x460c47
push eax
call dword [0x55645c]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x460c5e
push eax
call fcn.00538a53
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.00539051
add esp, 8
mov esi, dword [0x556464]
lea eax, [ebp - 0x148]
push eax
call esi
lea eax, [ebp - 0x138]
push eax
call esi
lea eax, [ebp - 0x128]
push eax
call esi
mov dword [ebp - 4], 0x103
mov eax, dword [ebp - 0x64]
test eax, eax
je 0x460c9e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x104
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x460cb5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x105
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x460ccc
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x106
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x460ce3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x107
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x460cfa
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x108
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x460d11
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x109
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x460d28
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x10a
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x460d3f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x10b
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x460d56
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x10c
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x460d6d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00538a53
add esp, 4
mov dword [ebp - 4], 0x10d
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x460d8d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x10e
mov eax, dword [ebp - 0xb8]
test eax, eax
je 0x460da4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x460db4
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0xf4]
test eax, eax
je 0x460dc7
push eax
call fcn.00538a53
add esp, 4
push dword [ebp - 0x108]
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x70]
test eax, eax
je 0x460de5
push eax
call fcn.00538a53
add esp, 4
mov eax, dword [ebp - 0x74]
test eax, eax
je 0x460df5
push eax
call fcn.00538a53
add esp, 4
mov al, byte [ebp - 0xed]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00538a45
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
push 0x8007000e
call fcn.005386e0
push 0x8007000e
call fcn.005386e0
push 0x8007000e
call fcn.005386e0
push 0x8007000e
call fcn.005386e0
push 0x8007000e
call fcn.005386e0
push 0x8007000e
call fcn.005386e0
push 0x8007000e
call fcn.005386e0
push 0x8007000e
call fcn.005386e0
push 0x8007000e
call fcn.005386e0
push 0x8007000e
call fcn.005386e0
push 0x8007000e
call fcn.005386e0
push 0x8007000e
call fcn.005386e0
push 0x8007000e
call fcn.005386e0
push 0x8007000e
call fcn.005386e0
push 0x8007000e
call fcn.005386e0
push 0x8007000e
call fcn.005386e0
int3