Function at 0x45b340
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 0x54c40c
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x148
mov eax, dword [0x5ba200]
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.00405b80
mov dword [ebp - 4], 2
cmp dword [ebp - 0x7c], 6
je 0x45b3f0
mov byte [ebp - 0xe9], 0
jmp 0x45df4a
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.0053659c
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 0x45b47b
cmp word [edi], si
je 0x45b47b
inc esi
cmp word [edi + esi*2], 0
jne 0x45b473
xor ecx, ecx
mov dword [ebp - 0x1c], esi
lea eax, [esi + 1]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0053659c
add esp, 4
mov dword [ebp - 0x20], eax
test esi, esi
jle 0x45b4c0
mov ecx, eax
sub edi, eax
mov edx, esi
nop word [eax + eax]
mov ax, word [edi + ecx]
lea ecx, [ecx + 2]
mov word [ecx - 2], ax
sub edx, 1
jne 0x45b4b0
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.0053659c
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 [0x553090]
mov eax, dword [ebp - 0xf4]
xor ecx, ecx
mov dword [ebp - 0xf8], ecx
cmp word [eax], cx
je 0x45b52f
inc ecx
cmp word [eax + ecx*2], 0
jne 0x45b521
mov dword [ebp - 0xf8], ecx
mov dword [ebp - 0x28], ecx
test esi, esi
jne 0x45b54d
cmp word [edi], si
je 0x45b548
nop dword [eax + eax]
inc esi
cmp word [edi + esi*2], 0
jne 0x45b540
mov dword [ebp - 0x1c], esi
test esi, esi
setg byte [ebp - 0x18]
test esi, esi
jle 0x45b57a
lea eax, [esi*2 - 2]
nop dword [eax]
cmp word [edi + eax], 0x5c
lea ecx, [edi + eax]
jne 0x45b57a
dec esi
xor edx, edx
sub eax, 2
mov dword [ebp - 0x1c], esi
mov word [ecx], dx
test esi, esi
jne 0x45b560
push 0
push 1
push 0xffffffffffffffff
push 1
push 0x572c70
lea ecx, [ebp - 0x20]
call fcn.00403db0
cmp eax, 2
jle 0x45b5cf
mov edx, dword [ebp - 0x20]
lea ecx, [eax - 1]
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x45b5bb
test edx, edx
je 0x45b5b8
cmp word [edx], ax
je 0x45b5b8
nop word [eax + eax]
inc eax
cmp word [edx + eax*2], 0
jne 0x45b5b0
mov dword [ebp - 0x1c], eax
cmp eax, ecx
setge byte [ebp - 0x18]
jl 0x45b5cf
cmovl ecx, eax
xor eax, eax
mov dword [ebp - 0x1c], ecx
mov word [edx + ecx*2], ax
call fcn.004063d0
movsd xmm1, qword [0x5a8080]
comisd xmm1, xmm0
jbe 0x45bf1d
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 0x572d8c
push dword [esi + 0x10]
call fcn.00405b80
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 0x573e6c
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x48]
push dword [esi + 0x14]
call fcn.00405b80
mov byte [ebp - 4], 0xb
cmp dword [ebp - 0x60], 3
jne 0x45becd
mov edi, dword [ebp - 0x48]
cmp edi, 2
jb 0x45becd
mov dword [ebp - 0xc0], 0
lea eax, [ebp - 0xc0]
push eax
push 0x5a7f44
push 1
push 0
push 0x5a7f34
call dword [0x55388c]
test eax, eax
jns 0x45b722
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45b6d2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45b6e2
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x45b6f2
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45b702
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x45dace
push eax
call fcn.00535f93
add esp, 4
mov byte [ebp - 0xe9], 0
jmp 0x45df19
mov dword [ebp - 0xb0], 0
mov byte [ebp - 4], 0xe
lea edx, [ebp - 0xb0]
mov eax, dword [ebp - 0xc0]
push edx
push 0x5a7f74
push dword [esi]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x18]
test eax, eax
js 0x45b7f5
mov eax, dword [ebp - 0xb0]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x10]
test eax, eax
jns 0x45b752
mov eax, dword [ebp - 0xb0]
push 0x2000
push eax
mov ecx, dword [eax]
call dword [ecx + 0x70]
test eax, eax
jns 0x45b894
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45b791
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45b7a5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45b7b5
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x45b7c5
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45b7d5
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x45dace
push eax
call fcn.00535f93
add esp, 4
mov byte [ebp - 0xe9], 0
jmp 0x45df19
mov eax, dword [ebp - 0xc0]
lea edx, [ebp - 0xb0]
push edx
push 0x5a7f74
push 0x5a7f04
push dword [esi]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
test eax, eax
jns 0x45b764
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45b830
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45b844
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45b854
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x45b864
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45b874
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x45dace
push eax
call fcn.00535f93
add esp, 4
mov byte [ebp - 0xe9], 0
jmp 0x45df19
mov eax, dword [ebp - 0xb0]
push dword [esi + 8]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x80]
test eax, eax
jns 0x45b922
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45b8be
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x14
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45b8d2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45b8e2
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x45b8f2
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45b902
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x45dace
push eax
call fcn.00535f93
add esp, 4
mov byte [ebp - 0xe9], 0
jmp 0x45df19
mov eax, dword [ebp - 0xb0]
push dword [esi + 0xc]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x88]
test eax, eax
jns 0x45b9b0
mov byte [ebp - 4], 0x15
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45b94c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x16
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45b960
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45b970
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x45b980
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45b990
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x45dace
push eax
call fcn.00535f93
add esp, 4
mov byte [ebp - 0xe9], 0
jmp 0x45df19
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 0x45b9f1
push 2
call fcn.0053659c
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, 0x5780c8
je 0x45ba36
mov esi, 0x5780c8
mov eax, edx
sub eax, esi
mov dword [ebp - 0x64], eax
nop
movzx eax, word [eax + esi]
mov ecx, eax
test ax, ax
jne 0x45ba76
cmp word [esi], ax
jne 0x45ba7b
mov edx, dword [ebp - 0xf4]
push edx
mov byte [ebp - 0xe9], 0
call fcn.00535f93
mov al, byte [ebp - 0xe9]
add esp, 4
mov byte [ebp - 0x24], al
mov dword [ebp - 0x28], 0
push 2
call fcn.0053659c
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 0x45bad2
cmp ax, word [esi]
je 0x45bac1
xor edx, edx
cmp dx, ax
jne 0x45ba8a
mov dword [ebp - 0xdc], edx
jmp 0x45ba9c
push ecx
call fcn.0053a46f
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 0x45baac
xor eax, eax
jmp 0x45bab8
push ecx
call fcn.0053a46f
add esp, 4
movzx eax, ax
cmp word [ebp - 0xdc], ax
jne 0x45bacc
mov eax, dword [ebp - 0x64]
add esi, 2
jmp 0x45ba20
mov edx, dword [ebp - 0xf4]
cmp dword [ebp - 0xf8], 0
je 0x45baee
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 0x45bbb4
mov byte [ebp - 4], 0x18
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x45bb3c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x19
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45bb50
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45bb64
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45bb74
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x45bb84
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45bb94
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x45dace
push eax
call fcn.00535f93
add esp, 4
mov byte [ebp - 0xe9], 0
jmp 0x45df19
push 0x30
lea eax, [ebp - 0xac]
push 0
push eax
call fcn.00537cf0
mov ecx, dword [ebp - 0xfc]
add esp, 0xc
mov eax, 0x30
mov word [ebp - 0xac], ax
test ecx, ecx
jne 0x45bbe5
mov dword [ebp - 0x8c], ecx
jmp 0x45bc11
jle 0x45bbfa
mov dword [ebp - 0x8c], 1
mov word [ebp - 0x88], cx
jmp 0x45bc11
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.0053a37c
add esp, 4
mov word [ebp - 0xa8], ax
push dword [esi + 4]
call fcn.0053a37c
add esp, 4
mov word [ebp - 0xa6], ax
push dword [esi + 8]
call fcn.0053a37c
mov esi, dword [ebp - 0x40]
add esp, 4
mov word [ebp - 0xa4], ax
test edi, edi
jne 0x45bc54
xor eax, eax
jmp 0x45bc63
mov eax, 1
test edi, edi
cmove edi, eax
mov eax, dword [esi]
mov dword [ebp - 0x48], edi
push eax
call fcn.0053a37c
add esp, 4
mov word [ebp - 0x9c], ax
test edi, edi
jne 0x45bc7b
xor eax, eax
jmp 0x45bca0
cmp edi, 1
ja 0x45bc92
lea ecx, [edi - 1]
cmp edi, ecx
ja 0x45bc8d
lea eax, [ecx + 1]
mov dword [ebp - 0x48], eax
mov eax, dword [esi + ecx*4]
jmp 0x45bca0
mov eax, 2
cmovbe edi, eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x48], edi
push eax
call fcn.0053a37c
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 0x45bd54
mov byte [ebp - 4], 0x1b
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x45bcdf
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45bcf3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1d
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45bd07
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45bd17
push eax
call fcn.00535f93
add esp, 4
test esi, esi
je 0x45bd24
push esi
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45bd34
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x45dace
push eax
call fcn.00535f93
add esp, 4
mov byte [ebp - 0xe9], 0
jmp 0x45df19
mov dword [ebp - 0xd0], 0
mov byte [ebp - 4], 0x1e
lea edx, [ebp - 0xd0]
mov eax, dword [ebp - 0xb0]
push edx
push 0x553910
push eax
mov ecx, dword [eax]
call dword [ecx]
test eax, eax
jns 0x45be1e
mov byte [ebp - 4], 0x1f
mov eax, dword [ebp - 0xd0]
test eax, eax
je 0x45bd95
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x20
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x45bda9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x21
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45bdbd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x22
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45bdd1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45bde1
push eax
call fcn.00535f93
add esp, 4
test esi, esi
je 0x45bdee
push esi
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45bdfe
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x45dace
push eax
call fcn.00535f93
add esp, 4
mov byte [ebp - 0xe9], 0
jmp 0x45df19
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 - 0xe9]
mov byte [ebp - 4], 0x23
mov eax, dword [ebp - 0xd0]
test eax, eax
je 0x45be4b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x24
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x45be5f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x25
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45be73
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x26
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45be87
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45be97
push eax
call fcn.00535f93
add esp, 4
test esi, esi
je 0x45bea4
push esi
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45beb4
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x45df19
push eax
call fcn.00535f93
add esp, 4
jmp 0x45df19
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x45bedd
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x45beed
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x45befd
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x45dace
push eax
call fcn.00535f93
add esp, 4
mov byte [ebp - 0xe9], 0
jmp 0x45df19
mov dword [ebp - 0xb8], 0
lea eax, [ebp - 0xb8]
push eax
push 0x56d3a0
push 1
push 0
push 0x56d3b0
call dword [0x55388c]
test eax, eax
jns 0x45bf4f
mov byte [ebp - 4], 0x28
jmp 0x45dabe
mov esi, dword [0x55345c]
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 [0x553468]
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 0x45c028
mov byte [ebp - 4], 0x2d
jmp 0x45dabe
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 - 0xd0], ecx
mov dword [ebp - 0xf0], esi
test ecx, ecx
je 0x45c078
cmp word [ecx], ax
je 0x45c078
nop dword [eax + eax]
inc eax
cmp word [ecx + eax*2], 0
jne 0x45c070
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp word [ecx*2 + 0x5780e0], 0
jne 0x45c080
add ecx, eax
test esi, esi
je 0x45c0aa
xor eax, eax
cmp word [esi], ax
je 0x45c0a8
nop dword [eax]
inc eax
cmp word [esi + eax*2], 0
jne 0x45c0a0
add ecx, eax
lea eax, [ecx + 1]
mov dword [ebp - 0xc8], ecx
xor ecx, ecx
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0053659c
mov edi, eax
add esp, 4
mov eax, dword [ebp - 0xd0]
mov edx, edi
mov dword [ebp - 0xe8], edi
test eax, eax
je 0x45c103
movzx ecx, word [eax]
mov eax, ecx
test cx, cx
je 0x45c103
mov esi, dword [ebp - 0xd0]
sub esi, edi
mov word [edx], cx
add edx, 2
movzx eax, word [esi + edx]
mov ecx, eax
test ax, ax
jne 0x45c0f2
mov esi, 0x5780e0
mov ecx, 0x54
sub esi, edx
nop
mov word [edx], cx
add edx, 2
movzx eax, word [esi + edx]
mov ecx, eax
test ax, ax
jne 0x45c110
mov esi, dword [ebp - 0xf0]
test esi, esi
je 0x45c146
movzx eax, word [esi]
mov ecx, eax
test ax, ax
je 0x45c146
mov word [edx], ax
lea esi, [esi + 2]
movzx eax, word [esi]
add edx, 2
test ax, ax
jne 0x45c135
xor eax, eax
mov dword [ebp - 0x114], edi
mov word [edx], 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.005361a3
mov esi, eax
add esp, 4
mov dword [ebp - 0xf0], esi
mov byte [ebp - 4], 0x30
test esi, esi
je 0x45c1b5
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
push 0x572c70
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [0x553464]
mov dword [esi], eax
test eax, eax
je 0x45df90
jmp 0x45c1b7
xor esi, esi
mov byte [ebp - 4], 0x2f
mov dword [ebp - 0xf0], esi
test esi, esi
je 0x45df90
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
or ecx, 0xffffffff
mov dword [ebp - 0xf0], eax
mov byte [ebp - 4], 0x2f
lock xadd dword [esi + 8], ecx
dec ecx
jne 0x45c235
mov eax, dword [esi]
test eax, eax
je 0x45c20d
push eax
call dword [0x553460]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45c224
push eax
call fcn.00535f93
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0053658e
mov eax, dword [ebp - 0xf0]
add esp, 8
test al, al
je 0x45c25f
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0x32
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45c256
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x33
jmp 0x45dabe
mov eax, dword [ebp - 0x74]
push 0xc
mov eax, dword [eax]
mov dword [ebp - 0xc8], eax
call fcn.005361a3
mov esi, eax
add esp, 4
mov dword [ebp - 0xf0], esi
mov byte [ebp - 4], 0x34
test esi, esi
je 0x45c2c0
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 [0x553464]
mov dword [esi], eax
test eax, eax
jne 0x45c2c2
cmp dword [ebp - 0xc8], eax
jne 0x45df9a
jmp 0x45c2c2
xor esi, esi
mov byte [ebp - 4], 0x2f
mov dword [ebp - 0xf0], esi
test esi, esi
je 0x45df90
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 eax, 0xffffffff
lock xadd dword [esi + 8], eax
dec eax
jne 0x45c328
mov eax, dword [esi]
test eax, eax
je 0x45c306
push eax
call dword [0x553460]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45c31d
push eax
call fcn.00535f93
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0053658e
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 0x45c3a7
mov byte [ebp - 4], 0x38
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45c36d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x39
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45c381
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0x3a
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45c39e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x3b
jmp 0x45dabe
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 0x45c40c
mov byte [ebp - 4], 0x3c
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45c3d2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x3d
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45c3e6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0x3e
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45c403
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x3f
jmp 0x45dabe
push 0xc
mov byte [ebp - 0x100], 1
call fcn.005361a3
mov esi, eax
add esp, 4
mov dword [ebp - 0xf0], esi
mov byte [ebp - 4], 0x40
test esi, esi
je 0x45c461
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 [0x553464]
mov dword [esi], eax
test eax, eax
je 0x45dfa4
jmp 0x45c463
xor esi, esi
mov byte [ebp - 4], 0x37
mov dword [ebp - 0xf0], esi
test esi, esi
je 0x45df90
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
or ecx, 0xffffffff
mov dword [ebp - 0xf0], eax
mov byte [ebp - 4], 0x37
lock xadd dword [esi + 8], ecx
dec ecx
jne 0x45c4da
mov eax, dword [esi]
test eax, eax
je 0x45c4b2
push eax
call dword [0x553460]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45c4c9
push eax
call fcn.00535f93
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0053658e
mov eax, dword [ebp - 0xf0]
add esp, 8
test al, al
je 0x45c52c
mov byte [ebp - 4], 0x42
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45c4f2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x43
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45c506
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0x44
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45c523
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x45
jmp 0x45dabe
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 0x45c590
mov byte [ebp - 4], 0x46
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45c556
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x47
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45c56a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0x48
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45c587
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x49
jmp 0x45dabe
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 0x45c617
mov byte [ebp - 4], 0x4b
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45c5c9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x4c
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45c5dd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x4d
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45c5f1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0x4e
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45c60e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x4f
jmp 0x45dabe
push 0xc
call fcn.005361a3
mov esi, eax
add esp, 4
mov dword [ebp - 0xf0], esi
mov byte [ebp - 4], 0x50
test esi, esi
je 0x45c664
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
push 0x5780e4
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [0x553464]
mov dword [esi], eax
test eax, eax
je 0x45dfae
jmp 0x45c666
xor esi, esi
mov byte [ebp - 4], 0x4a
mov dword [ebp - 0xf0], esi
test esi, esi
je 0x45df90
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
or ecx, 0xffffffff
mov dword [ebp - 0xf0], eax
mov byte [ebp - 4], 0x4a
lock xadd dword [esi + 8], ecx
dec ecx
jne 0x45c6dd
mov eax, dword [esi]
test eax, eax
je 0x45c6b5
push eax
call dword [0x553460]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45c6cc
push eax
call fcn.00535f93
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0053658e
mov eax, dword [ebp - 0xf0]
add esp, 8
test al, al
je 0x45c743
mov byte [ebp - 4], 0x52
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45c6f5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x53
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45c709
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x54
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45c71d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0x55
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45c73a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x56
jmp 0x45dabe
mov eax, dword [ebp - 0xb0]
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0x48]
test eax, eax
jns 0x45c7b7
mov byte [ebp - 4], 0x57
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45c769
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x58
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45c77d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x59
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45c791
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0x5a
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45c7ae
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x5b
jmp 0x45dabe
cmp dword [ebp - 0xf8], 0
je 0x45cacf
push 0
push 1
push 1
push 0
push 0x572c70
lea ecx, [ebp - 0x2c]
call fcn.00403db0
test eax, eax
jne 0x45c8fe
mov eax, dword [ebp - 0x2c]
push 0x102
mov dword [ebp - 0xc8], 0x80
mov dword [ebp - 0xf0], eax
mov dword [ebp - 0x28], 0
call fcn.0053659c
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 - 0xf0]
test eax, eax
je 0x45c82c
push eax
call fcn.00535f93
add esp, 4
lea eax, [ebp - 0xc8]
push eax
push esi
call dword [0x553368]
xor eax, eax
mov byte [ebp - 0x24], 0
cmp word [esi], ax
je 0x45c852
inc eax
cmp word [esi + eax*2], 0
jne 0x45c845
mov dword [ebp - 0x28], eax
jmp 0x45c857
mov dword [ebp - 0x28], eax
xor eax, eax
xor ecx, ecx
nop dword [eax]
inc ecx
cmp word [ecx*2 + 0x572c70], 0
jne 0x45c860
add eax, ecx
mov edx, 2
mov dword [ebp - 0xf0], eax
xor ecx, ecx
inc eax
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0053659c
mov dword [ebp - 0xf4], eax
mov ecx, eax
movzx eax, word [esi]
add esp, 4
mov edx, eax
test ax, ax
je 0x45c8b5
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 0x45c8a4
mov edi, 0x572c70
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 0x45c8c1
xor eax, eax
push esi
mov word [ecx], ax
call fcn.00535f93
mov esi, dword [ebp - 0xf4]
add esp, 4
mov eax, dword [ebp - 0xf0]
mov edi, dword [ebp - 0xe8]
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x28], eax
mov byte [ebp - 0x24], 1
jmp 0x45c907
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 0x45c97b
mov byte [ebp - 4], 0x5c
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45c92d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x5d
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45c941
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x5e
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45c955
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0x5f
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45c972
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x60
jmp 0x45dabe
test esi, esi
jne 0x45c99a
push 2
call fcn.0053659c
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.005361a3
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 0x61
test esi, esi
je 0x45c9f4
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 [0x553464]
mov dword [esi], eax
test eax, eax
jne 0x45c9f6
cmp dword [ebp - 0xf4], eax
jne 0x45dfb8
jmp 0x45c9f6
xor esi, esi
mov byte [ebp - 4], 0x4a
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x45df90
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
or ecx, 0xffffffff
mov dword [ebp - 0xe8], eax
lock xadd dword [esi + 8], ecx
dec ecx
jne 0x45ca69
mov eax, dword [esi]
test eax, eax
je 0x45ca41
push eax
call dword [0x553460]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45ca58
push eax
call fcn.00535f93
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0053658e
mov eax, dword [ebp - 0xe8]
add esp, 8
test al, al
je 0x45cacf
mov byte [ebp - 4], 0x63
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45ca81
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x64
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45ca95
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x65
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45caa9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0x66
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45cac6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x67
jmp 0x45dabe
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 0x45cb6a
mov byte [ebp - 4], 0x69
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45cb08
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6a
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45cb1c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6b
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45cb30
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6c
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45cb44
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0x6d
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45cb61
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6e
jmp 0x45dabe
mov eax, dword [ebp - 0xcc]
push 0xffffffffffffffff
push eax
mov ecx, dword [eax]
call dword [ecx + 0x58]
test eax, eax
jns 0x45cbf2
mov byte [ebp - 4], 0x6f
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45cb90
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x70
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45cba4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x71
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45cbb8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x72
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45cbcc
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0x73
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45cbe9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x74
jmp 0x45dabe
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 0x45ccc1
mov byte [ebp - 4], 0x76
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45cc4b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x77
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45cc5f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x78
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45cc73
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x79
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45cc87
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7a
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45cc9b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0x7b
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45ccb8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7c
jmp 0x45dabe
mov dword [ebp - 0xd4], 0
mov eax, dword [ebp - 0xfc]
mov byte [ebp - 4], 0x7d
test eax, eax
jne 0x45ccde
lea edx, [eax + 1]
jmp 0x45ccf8
jle 0x45cce7
mov edx, 2
jmp 0x45ccf8
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 0x45cdb2
mov byte [ebp - 4], 0x7e
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x45cd28
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7f
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45cd3c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x80
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45cd50
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x81
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45cd64
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x82
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45cd78
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x83
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45cd8c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0x84
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45cda9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x85
jmp 0x45dabe
push 0xc
call fcn.005361a3
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 0x86
test esi, esi
je 0x45cdff
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
push 0x5780fc
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [0x553464]
mov dword [esi], eax
test eax, eax
je 0x45dfc2
jmp 0x45ce01
xor esi, esi
mov byte [ebp - 4], 0x7d
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x45df90
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
or ecx, 0xffffffff
mov dword [ebp - 0xe8], eax
mov byte [ebp - 4], 0x7d
lock xadd dword [esi + 8], ecx
dec ecx
jne 0x45ce78
mov eax, dword [esi]
test eax, eax
je 0x45ce50
push eax
call dword [0x553460]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45ce67
push eax
call fcn.00535f93
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0053658e
mov eax, dword [ebp - 0xe8]
add esp, 8
test al, al
je 0x45cf1e
mov byte [ebp - 4], 0x88
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x45ce94
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x89
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45cea8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8a
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45cebc
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8b
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45ced0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8c
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45cee4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8d
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45cef8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0x8e
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45cf15
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8f
jmp 0x45dabe
push 0xc
mov byte [ebp - 0x10c], 1
call fcn.005361a3
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 0x90
test esi, esi
je 0x45cf6e
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 [0x553464]
mov dword [esi], eax
test eax, eax
je 0x45dfcc
jmp 0x45cf70
xor esi, esi
mov byte [ebp - 4], 0x7d
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x45df90
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
or ecx, 0xffffffff
mov dword [ebp - 0xe8], eax
lock xadd dword [esi + 8], ecx
dec ecx
jne 0x45cfe3
mov eax, dword [esi]
test eax, eax
je 0x45cfbb
push eax
call dword [0x553460]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45cfd2
push eax
call fcn.00535f93
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0053658e
mov eax, dword [ebp - 0xe8]
add esp, 8
test al, al
je 0x45d089
mov byte [ebp - 4], 0x92
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x45cfff
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x93
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45d013
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x94
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45d027
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x95
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45d03b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x96
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45d04f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x97
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45d063
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0x98
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45d080
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x99
jmp 0x45dabe
mov esi, dword [ebp - 0xfc]
test esi, esi
jle 0x45d18c
mov dword [ebp - 0xd0], 0
mov byte [ebp - 4], 0x9a
lea edx, [ebp - 0xd0]
mov eax, dword [ebp - 0xd4]
push edx
push 0x56d390
push eax
mov ecx, dword [eax]
call dword [ecx]
test eax, eax
jns 0x45d176
mov byte [ebp - 4], 0x9b
mov eax, dword [ebp - 0xd0]
test eax, eax
je 0x45d0d8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9c
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x45d0ec
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9d
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45d100
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9e
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45d114
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9f
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45d128
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa0
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45d13c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa1
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45d150
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0xa2
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45d16d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa3
jmp 0x45dabe
mov eax, dword [ebp - 0xd0]
push esi
push eax
mov ecx, dword [eax]
call dword [ecx + 0x54]
mov byte [ebp - 4], 0xa4
jmp 0x45d432
cmp dword [ebp - 0xf8], 0
je 0x45d442
cmp esi, 0xffffffff
jne 0x45d442
mov dword [ebp - 0xd0], 0
mov byte [ebp - 4], 0xa5
lea edx, [ebp - 0xd0]
mov eax, dword [ebp - 0xd4]
push edx
push 0x56d3c0
push eax
mov ecx, dword [eax]
call dword [ecx]
test eax, eax
jns 0x45d281
mov byte [ebp - 4], 0xa6
mov eax, dword [ebp - 0xd0]
test eax, eax
je 0x45d1e3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa7
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x45d1f7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa8
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45d20b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa9
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45d21f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xaa
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45d233
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xab
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45d247
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xac
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45d25b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0xad
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45d278
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xae
jmp 0x45dabe
cmp dword [ebp - 0xf4], 0
jne 0x45d2a5
push 2
call fcn.0053659c
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.005361a3
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 0xaf
test esi, esi
je 0x45d2ff
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 [0x553464]
mov dword [esi], eax
test eax, eax
jne 0x45d301
cmp dword [ebp - 0xf4], eax
jne 0x45dfd6
jmp 0x45d301
xor esi, esi
mov byte [ebp - 4], 0xa5
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x45dfe0
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
or ecx, 0xffffffff
mov dword [ebp - 0xe8], eax
lock xadd dword [esi + 8], ecx
dec ecx
jne 0x45d374
mov eax, dword [esi]
test eax, eax
je 0x45d34c
push eax
call dword [0x553460]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45d363
push eax
call fcn.00535f93
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0053658e
mov eax, dword [ebp - 0xe8]
add esp, 8
test al, al
je 0x45d42e
mov byte [ebp - 4], 0xb1
mov eax, dword [ebp - 0xd0]
test eax, eax
je 0x45d390
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb2
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x45d3a4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb3
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45d3b8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb4
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45d3cc
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb5
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45d3e0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb6
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45d3f4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb7
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45d408
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0xb8
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45d425
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb9
jmp 0x45dabe
mov byte [ebp - 4], 0xba
mov eax, dword [ebp - 0xd0]
test eax, eax
je 0x45d442
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 0x45d559
mov byte [ebp - 4], 0xbe
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x45d493
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xbf
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x45d4a7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc0
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x45d4bb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc1
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x45d4cf
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc2
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45d4e3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc3
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45d4f7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc4
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45d50b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc5
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45d51f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc6
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45d533
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0xc7
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45d550
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc8
jmp 0x45dabe
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 0x45d650
mov byte [ebp - 4], 0xc9
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x45d58a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xca
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x45d59e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xcb
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x45d5b2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xcc
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x45d5c6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xcd
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45d5da
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xce
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45d5ee
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xcf
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45d602
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd0
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45d616
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd1
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45d62a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0xd2
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45d647
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd3
jmp 0x45dabe
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 0x45d749
mov byte [ebp - 4], 0xd4
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x45d683
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd5
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x45d697
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd6
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x45d6ab
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd7
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x45d6bf
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd8
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45d6d3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd9
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45d6e7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xda
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45d6fb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xdb
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45d70f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xdc
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45d723
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0xdd
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45d740
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xde
jmp 0x45dabe
mov eax, dword [ebp - 0x74]
push 0xc
mov eax, dword [eax + 8]
mov dword [ebp - 0xc8], eax
call fcn.005361a3
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 0xdf
test esi, esi
je 0x45d7ab
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 [0x553464]
mov dword [esi], eax
test eax, eax
jne 0x45d7ad
cmp dword [ebp - 0xc8], eax
jne 0x45dfea
jmp 0x45d7ad
xor esi, esi
mov byte [ebp - 4], 0xbd
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x45df90
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
or ecx, 0xffffffff
mov dword [ebp - 0xe8], eax
mov byte [ebp - 4], 0xbd
lock xadd dword [esi + 8], ecx
dec ecx
jne 0x45d824
mov eax, dword [esi]
test eax, eax
je 0x45d7fc
push eax
call dword [0x553460]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45d813
push eax
call fcn.00535f93
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0053658e
mov eax, dword [ebp - 0xe8]
add esp, 8
test al, al
je 0x45d906
mov byte [ebp - 4], 0xe1
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x45d840
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe2
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x45d854
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe3
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x45d868
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe4
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x45d87c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe5
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45d890
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe6
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45d8a4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe7
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45d8b8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe8
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45d8cc
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe9
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45d8e0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0xea
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45d8fd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xeb
jmp 0x45dabe
mov eax, dword [ebp - 0x74]
push 0xc
mov eax, dword [eax + 0xc]
mov dword [ebp - 0xc8], eax
call fcn.005361a3
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 0xec
test esi, esi
je 0x45d968
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 [0x553464]
mov dword [esi], eax
test eax, eax
jne 0x45d96a
cmp dword [ebp - 0xc8], eax
jne 0x45dff4
jmp 0x45d96a
xor esi, esi
mov byte [ebp - 4], 0xbd
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x45df90
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
or ecx, 0xffffffff
mov dword [ebp - 0xe8], eax
mov byte [ebp - 4], 0xbd
lock xadd dword [esi + 8], ecx
dec ecx
jne 0x45d9e1
mov eax, dword [esi]
test eax, eax
je 0x45d9b9
push eax
call dword [0x553460]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45d9d0
push eax
call fcn.00535f93
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0053658e
mov eax, dword [ebp - 0xe8]
add esp, 8
test al, al
je 0x45dada
mov byte [ebp - 4], 0xee
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x45d9fd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xef
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x45da11
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf0
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x45da25
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf1
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x45da39
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf2
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45da4d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf3
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45da61
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf4
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45da75
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf5
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45da89
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf6
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45da9d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov byte [ebp - 4], 0xf7
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45daba
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf8
mov eax, dword [ebp - 0xb8]
test eax, eax
je 0x45dace
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 0xe9], 0
jmp 0x45df19
cmp dword [ebp - 0x20], 0
jne 0x45daf5
push 2
call fcn.0053659c
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.005361a3
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 0xf9
test esi, esi
je 0x45db49
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 [0x553464]
mov dword [esi], eax
test eax, eax
jne 0x45db4b
cmp dword [ebp - 0x20], eax
jne 0x45dffe
jmp 0x45db4b
xor esi, esi
mov byte [ebp - 4], 0xbd
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x45df90
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 0x45dbb3
mov eax, dword [esi]
test eax, eax
je 0x45db91
push eax
call dword [0x553460]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45dba8
push eax
call fcn.00535f93
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0053658e
add esp, 8
push 0xc
call fcn.005361a3
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 0xfb
test esi, esi
je 0x45dc00
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
push 0x578110
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [0x553464]
mov dword [esi], eax
test eax, eax
je 0x45e008
jmp 0x45dc02
xor esi, esi
mov byte [ebp - 4], 0xbd
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x45df90
mov byte [ebp - 4], 0xfc
mov eax, dword [ebp - 0xe0]
push dword [esi]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x20]
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
dec eax
jne 0x45dc66
mov eax, dword [esi]
test eax, eax
je 0x45dc44
push eax
call dword [0x553460]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45dc5b
push eax
call fcn.00535f93
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0053658e
add esp, 8
mov dword [ebp - 0x64], 0
mov eax, 8
mov byte [ebp - 4], 0xfd
push 0x572c78
mov word [ebp - 0x128], ax
call dword [0x553464]
mov dword [ebp - 0x120], eax
test eax, eax
je 0x45e012
movups xmm0, xmmword [ebp - 0x128]
mov esi, dword [0x55345c]
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.005361a3
mov esi, eax
add esp, 4
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 1
test esi, esi
je 0x45dd3a
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 [0x553464]
mov dword [esi], eax
test eax, eax
jne 0x45dd3c
cmp dword [ebp - 0xc8], eax
jne 0x45e01c
jmp 0x45dd3c
xor esi, esi
mov byte [ebp - 4], 0
mov dword [ebp - 0xe8], esi
test esi, esi
je 0x45e026
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 - 0xe9]
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
dec eax
jne 0x45ddde
mov eax, dword [esi]
test eax, eax
je 0x45ddbc
push eax
call dword [0x553460]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x45ddd3
push eax
call fcn.00535f93
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0053658e
add esp, 8
mov esi, dword [0x553468]
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 0x45de13
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x104
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x45de2a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x105
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x45de41
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x106
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x45de58
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x107
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x45de6f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x108
mov eax, dword [ebp - 0xc0]
test eax, eax
je 0x45de86
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x109
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x45de9d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x10a
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x45deb4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x10b
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x45decb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x10c
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x45dee2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
call fcn.00535f93
add esp, 4
mov dword [ebp - 4], 0x10d
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x45df02
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0x10e
mov eax, dword [ebp - 0xb8]
test eax, eax
je 0x45df19
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x45df29
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0xf4]
test eax, eax
je 0x45df3c
push eax
call fcn.00535f93
add esp, 4
push dword [ebp - 0x108]
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x70]
test eax, eax
je 0x45df5a
push eax
call fcn.00535f93
add esp, 4
mov eax, dword [ebp - 0x74]
test eax, eax
je 0x45df6a
push eax
call fcn.00535f93
add esp, 4
mov al, byte [ebp - 0xe9]
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.00535f85
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
push 0x8007000e
call fcn.00535c20
push 0x8007000e
call fcn.00535c20
push 0x8007000e
call fcn.00535c20
push 0x8007000e
call fcn.00535c20
push 0x8007000e
call fcn.00535c20
push 0x8007000e
call fcn.00535c20
push 0x8007000e
call fcn.00535c20
push 0x8007000e
call fcn.00535c20
push 0x8007000e
call fcn.00535c20
push 0x8007000e
call fcn.00535c20
push 0x8007000e
call fcn.00535c20
push 0x8007000e
call fcn.00535c20
push 0x8007000e
call fcn.00535c20
push 0x8007000e
call fcn.00535c20
push 0x8007000e
call fcn.00535c20
push 0x8007000e
call fcn.00535c20
int3