Function at 0x43bd50
Capabilities:
Encode data using xor
Get common file path
Inspect section memory permissions

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 0x525c8d
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x318
mov eax, ecx
mov byte [ebp - 0x19], dl
push esi
mov dword [ebp - 0xf4], eax
push edi
mov dword [ebp - 0x18], 1
mov dword [ebp - 4], 0
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
push 0x104
lea eax, [ebp - 0x328]
mov byte [ebp - 4], 2
mov esi, 1
push 0
push eax
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x18], esi
call fcn.004fd0d0
add esp, 0xc
lea eax, [ebp - 0x328]
push eax
movzx eax, byte [ebp - 0x19]
xor eax, esi
push 0
push 0
lea eax, [eax*2 + 0x1a]
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetFolderPathA]
lea ecx, [ebp - 0x328]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43be00
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebx + 0x1c]
sub eax, edx
cmp eax, ecx
jb 0x43e11b
cmp dword [ebx + 0x20], 0x10
lea eax, [ebx + 0xc]
push edx
cmovae eax, dword [ebx + 0xc]
push eax
push ecx
lea eax, [ebp - 0x328]
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0x128]
call fcn.0048aa20
mov dword [ebp - 4], 3
xor edi, edi
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x84], edi
mov dword [ebp - 0x80], edi
cmp byte [ebx + 8], 0
mov byte [ebp - 4], 4
jne 0x43c324
sub esp, 0x18
lea eax, [ebp - 0x128]
mov ecx, esp
push eax
call fcn.00483010
push edi
mov dl, 1
lea ecx, [ebp - 0xcc]
call fcn.00427910
add esp, 0x1c
lea ecx, [ebp - 0xcc]
mov byte [ebp - 4], 5
call fcn.00481ca0
test eax, eax
jne 0x43bed1
call fcn.00485200
lea ecx, [ebp - 0x88]
call fcn.00485200
lea ecx, [ebp - 0x128]
call fcn.00402a10
lea ecx, [ebx + 0xc]
call fcn.00402a10
lea ecx, [ebx + 0x24]
call fcn.00402a10
jmp 0x43e102
mov esi, dword [ebp - 0xcc]
xor ecx, ecx
mov dword [ebp - 0x5c], ecx
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0xc8]
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x43c313
xor edi, edi
mov dword [ebp - 0x60], edi
xorps xmm0, xmm0
mov byte [ebp - 0xef], 0xdb
add edi, esi
movq qword [ebp - 0xee], xmm0
mov word [ebp - 0xe6], 0
xor ecx, ecx
nop
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0xef], al
inc ecx
cmp ecx, 1
jb 0x43bf20
mov dword [0x55d620], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0xef]
mov byte [ebp - 0xee], 0
movups xmmword [ebp - 0x3c], xmm0
mov dword [ebp - 0x2c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x28], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43bf60
sub ecx, edx
lea eax, [ebp - 0xef]
push ecx
push eax
lea ecx, [ebp - 0x3c]
call fcn.00402b80
mov byte [ebp - 4], 6
lea edx, [ebp - 0x3c]
cmp dword [ebp - 0x28], 0x10
cmovae edx, dword [ebp - 0x3c]
mov ecx, edx
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43bf90
sub ecx, esi
mov eax, closesocket
mov esi, dword [ebp - 0x118]
sub eax, esi
cmp eax, ecx
jb 0x43e11b
cmp dword [ebp - 0x114], 0x10
lea eax, [ebp - 0x128]
push ecx
cmovae eax, dword [ebp - 0x128]
push edx
push esi
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0x78]
call fcn.0048aa20
sub esp, 0x18
mov byte [ebp - 4], 7
mov esi, esp
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x20], esi
push edi
call fcn.00482d90
xorps xmm0, xmm0
lea ecx, [ebp - 0x100]
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
xor dl, dl
mov dword [esi + 0x14], 0
movups xmm0, xmmword [eax]
push 0
movups xmmword [esi], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [esi + 0x10], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call fcn.00427910
add esp, 0x1c
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x64]
cmp ecx, 0x10
jb 0x43c066
mov edx, dword [ebp - 0x78]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43c05c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x10
jb 0x43c0b0
mov edx, dword [ebp - 0x3c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43c0a6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov ecx, dword [ebp - 0xfc]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x100]
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x43c2cd
xor ecx, ecx
mov dword [ebp - 0x7c], ecx
test eax, eax
je 0x43c2cd
xor eax, eax
mov dword [ebp - 0x8c], eax
nop word [eax + eax]
cmp dword [ebx + 0x38], 0x10
lea ecx, [esi + eax]
mov eax, dword [ecx + 0x10]
lea esi, [ebx + 0x24]
cmovae esi, dword [ebx + 0x24]
cmp dword [ecx + 0x14], 0x10
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], esi
jb 0x43c112
mov ecx, dword [ecx]
mov dword [ebp - 0x24], ecx
mov edx, dword [ebx + 0x34]
cmp edx, eax
ja 0x43c295
sub eax, edx
test edx, edx
je 0x43c1e7
movsx edx, byte [esi]
inc eax
add eax, ecx
mov dword [ebp - 0x90], edx
mov dword [ebp - 0x194], eax
sub eax, ecx
push eax
push edx
push ecx
call fcn.004fe8c0
mov edi, eax
add esp, 0xc
test edi, edi
je 0x43c295
mov ecx, esi
mov edx, edi
mov esi, dword [ebx + 0x34]
sub esi, 4
jb 0x43c171
nop dword [eax]
mov eax, dword [edx]
cmp eax, dword [ecx]
jne 0x43c176
add edx, 4
add ecx, 4
sub esi, 4
jae 0x43c160
cmp esi, 0xfffffffc
je 0x43c1aa
mov al, byte [edx]
cmp al, byte [ecx]
jne 0x43c1a3
cmp esi, 0xfffffffd
je 0x43c1aa
mov al, byte [edx + 1]
cmp al, byte [ecx + 1]
jne 0x43c1a3
cmp esi, 0xfffffffe
je 0x43c1aa
mov al, byte [edx + 2]
cmp al, byte [ecx + 2]
jne 0x43c1a3
cmp esi, 0xffffffff
je 0x43c1aa
mov al, byte [edx + 3]
cmp al, byte [ecx + 3]
je 0x43c1aa
sbb eax, eax
or eax, 1
jmp 0x43c1ac
xor eax, eax
test eax, eax
je 0x43c1db
mov eax, dword [ebp - 0x194]
inc edi
sub eax, edi
push eax
push dword [ebp - 0x90]
push edi
call fcn.004fe8c0
mov esi, dword [ebp - 0x20]
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x43c150
jmp 0x43c295
sub edi, dword [ebp - 0x24]
cmp edi, 0xffffffff
je 0x43c295
mov esi, dword [ebp - 0x40]
mov eax, 0x2aaaaaab
mov ecx, esi
xor edi, edi
sub ecx, dword [ebp - 0x88]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x20], eax
je 0x43c25c
mov ecx, dword [ebp - 0x60]
add ecx, dword [ebp - 0xcc]
mov esi, dword [ebp - 0x88]
mov dword [ebp - 0x90], ecx
mov edx, dword [ecx + 0x10]
cmp dword [ecx + 0x14], 0x10
mov eax, ecx
jb 0x43c22c
mov eax, dword [ecx]
cmp dword [esi + 0x14], 0x10
mov ecx, esi
jb 0x43c236
mov ecx, dword [esi]
push edx
mov edx, dword [esi + 0x10]
push eax
call fcn.00492d00
add esp, 8
test al, al
jne 0x43c295
mov ecx, dword [ebp - 0x90]
inc edi
add esi, 0x18
mov edx, dword [ecx + 0x10]
cmp edi, dword [ebp - 0x20]
jb 0x43c222
mov esi, dword [ebp - 0x40]
mov eax, dword [ebp - 0xcc]
add eax, dword [ebp - 0x60]
push eax
cmp esi, dword [ebp - 0x80]
je 0x43c280
mov ecx, esi
call fcn.00483010
add esi, 0x18
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x84], esi
jmp 0x43c295
push esi
lea ecx, [ebp - 0x88]
call fcn.0048fcd0
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0xfc]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x100]
sub ecx, esi
inc dword [ebp - 0x7c]
add dword [ebp - 0x8c], 0x18
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x8c]
jb 0x43c0f0
lea ecx, [ebp - 0x100]
mov byte [ebp - 4], 5
call fcn.00485200
mov ecx, dword [ebp - 0xc8]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0xcc]
sub ecx, esi
mov edi, dword [ebp - 0x60]
inc dword [ebp - 0x5c]
add edi, 0x18
imul ecx
mov dword [ebp - 0x60], edi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x5c], eax
jb 0x43bf00
mov edi, dword [ebp - 0x40]
lea ecx, [ebp - 0xcc]
mov byte [ebp - 4], 4
call fcn.00485200
jmp 0x43c362
push 0x5424b0
lea ecx, [ebp - 0x190]
call fcn.00402ab0
lea eax, [ebp - 0x190]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0x88]
call fcn.00481d00
lea ecx, [ebp - 0x190]
mov byte [ebp - 4], 4
call fcn.00402a10
mov edi, dword [ebp - 0x84]
mov dword [ebp - 0x40], edi
mov ecx, edi
mov eax, 0x2aaaaaab
sub ecx, dword [ebp - 0x88]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x43c3f4
xorps xmm0, xmm0
mov dword [ebp - 0x2c], eax
movups xmmword [ebp - 0x3c], xmm0
mov dword [ebp - 0x28], 0xf
mov byte [ebp - 0x3c], al
mov byte [ebp - 4], 0xc
cmp edi, dword [ebp - 0x80]
je 0x43c3cf
movups xmmword [edi], xmm0
mov dword [edi + 0x10], eax
movups xmm0, xmmword [ebp - 0x3c]
mov dword [edi + 0x14], eax
mov byte [ebp - 0x3c], al
movups xmmword [edi], xmm0
movq xmm0, qword [ebp - 0x2c]
movq qword [edi + 0x10], xmm0
add edi, 0x18
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], 0xf
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x84], edi
jmp 0x43c3e8
lea eax, [ebp - 0x3c]
push eax
push edi
lea ecx, [ebp - 0x88]
call fcn.0048fbb0
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x40], eax
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 4
call fcn.00402a10
movaps xmm0, xmmword [0x5481b0]
xor ecx, ecx
mov dword [ebp - 0x56], 0xe9e6c4db
mov word [ebp - 0x52], 0xe0ea
movups xmmword [ebp - 0x50], xmm0
nop
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x56], al
inc ecx
cmp ecx, 0xc
jb 0x43c410
mov dword [0x55d528], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x56]
mov byte [ebp - 0x4a], 0
movups xmmword [ebp - 0x3c], xmm0
mov dword [ebp - 0x2c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x28], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43c443
sub ecx, edx
lea eax, [ebp - 0x56]
push ecx
push eax
lea ecx, [ebp - 0x3c]
call fcn.00402b80
mov byte [ebp - 4], 0xd
lea edx, [ebp - 0x3c]
cmp dword [ebp - 0x28], 0x10
cmovae edx, dword [ebp - 0x3c]
sub esp, 0x18
mov ecx, edx
mov edi, esp
mov dword [ebp - 0x20], edi
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43c475
sub ecx, esi
mov eax, closesocket
mov esi, dword [ebp - 0x118]
sub eax, esi
cmp eax, ecx
jb 0x43e120
cmp dword [ebp - 0x114], 0x10
lea eax, [ebp - 0x128]
push ecx
cmovae eax, dword [ebp - 0x128]
push edx
push esi
push eax
push ecx
push dword [ebp - 0x20]
mov ecx, edi
call fcn.0048aa20
lea ecx, [ebp - 0x208]
call fcn.0040d3d0
add esp, 0x18
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x10
jb 0x43c4fc
mov edx, dword [ebp - 0x3c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43c4f2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x1c0], 0
mov edi, 0xf
movups xmmword [ebp - 0x1d0], xmm0
mov dword [ebp - 0x1bc], edi
mov byte [ebp - 0x1d0], 0
mov byte [ebp - 4], 0x10
cmp dword [ebp - 0x1f8], 0
je 0x43c856
sub esp, 0x28
lea edx, [ebp - 0x208]
mov eax, esp
lea ecx, [ebp - 0x110]
push 0
push 1
mov dword [eax + 0x24], 0
call fcn.00487220
add esp, 0x30
mov byte [ebp - 4], 0x11
xor ecx, ecx
movaps xmm0, xmmword [0x5482c0]
mov word [ebp - 0x160], 0xfbe8
movups xmmword [ebp - 0x15e], xmm0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x160], al
inc ecx
cmp ecx, 8
jb 0x43c574
mov dword [0x55d624], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x158], 0
movups xmmword [ebp - 0x78], xmm0
mov dword [ebp - 0x68], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x64], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43c5b0
sub ecx, edx
lea eax, [ebp - 0x160]
push ecx
push eax
lea ecx, [ebp - 0x78]
call fcn.00402b80
mov byte [ebp - 4], 0x12
lea eax, [ebp - 0x78]
cmp dword [ebp - 0x64], 0x10
lea ecx, [ebp - 0x110]
mov esi, 3
cmovae eax, dword [ebp - 0x78]
push eax
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x18], esi
call fcn.00486ff0
cmp byte [eax], 0
je 0x43c6d6
movaps xmm0, xmmword [0x5482c0]
xor ecx, ecx
mov word [ebp - 0x52], 0xfbe8
movups xmmword [ebp - 0x50], xmm0
nop dword [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x52], al
inc ecx
cmp ecx, 8
jb 0x43c610
lea eax, [ebp - 0x52]
mov dword [0x55d624], ecx
push eax
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 0x4a], 0
call fcn.00402ab0
mov dword [ebp - 4], 0x13
lea ecx, [ebp - 0x1b8]
mov dword [ebp - 0x18], 7
call fcn.00402b50
push eax
lea ecx, [ebp - 0x110]
call fcn.00486ff0
movaps xmm0, xmmword [0x547c00]
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x3b], 0xf8eae6e2
mov word [ebp - 0x37], 0xfcf2
mov byte [ebp - 0x35], 0xf9
movups xmmword [ebp - 0x34], xmm0
nop dword [eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x3b], al
inc ecx
cmp ecx, 0xd
jb 0x43c680
lea eax, [ebp - 0x3b]
mov dword [0x55d57c], ecx
push eax
lea ecx, [ebp - 0x190]
mov byte [ebp - 0x2e], 0
call fcn.00402ab0
mov dword [ebp - 4], 0x14
lea ecx, [ebp - 0x190]
mov esi, 0xf
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x18], esi
call fcn.00402b50
mov ecx, dword [ebp - 0x20]
push eax
call fcn.00486ff0
mov byte [ebp - 0x19], 1
cmp byte [eax], 0
jne 0x43c6da
mov byte [ebp - 0x19], 0
mov eax, dword [ebp - 0x14]
test al, 8
je 0x43c6f8
and eax, 0xfffffff7
lea ecx, [ebp - 0x190]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
call fcn.00402a10
mov eax, dword [ebp - 0x14]
test al, 4
je 0x43c713
and eax, 0xfffffffb
lea ecx, [ebp - 0x1b8]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
call fcn.00402a10
mov eax, dword [ebp - 0x14]
mov dword [ebp - 4], 0x11
test al, 2
je 0x43c72f
and eax, 0xfffffffd
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
call fcn.00402a10
cmp byte [ebp - 0x19], 0
je 0x43c847
movaps xmm0, xmmword [0x5482c0]
xor ecx, ecx
mov word [ebp - 0x52], 0xfbe8
movups xmmword [ebp - 0x50], xmm0
nop dword [eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x52], al
inc ecx
cmp ecx, 8
jb 0x43c750
lea eax, [ebp - 0x52]
mov dword [0x55d624], ecx
push eax
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 0x4a], 0
call fcn.00402ab0
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0x15
call fcn.00402b50
push eax
lea ecx, [ebp - 0x110]
call fcn.00486ff0
movaps xmm0, xmmword [0x547c00]
mov esi, eax
mov dword [ebp - 0x3b], 0xf8eae6e2
xor ecx, ecx
mov word [ebp - 0x37], 0xfcf2
mov byte [ebp - 0x35], 0xf9
movups xmmword [ebp - 0x34], xmm0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x3b], al
inc ecx
cmp ecx, 0xd
jb 0x43c7b2
lea eax, [ebp - 0x3b]
mov dword [0x55d57c], ecx
push eax
lea ecx, [ebp - 0x190]
mov byte [ebp - 0x2e], 0
call fcn.00402ab0
lea ecx, [ebp - 0x190]
mov byte [ebp - 4], 0x16
call fcn.00402b50
push eax
mov ecx, esi
call fcn.00486ff0
lea ecx, [ebp - 0x78]
push ecx
mov ecx, eax
call fcn.00487130
mov edx, eax
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x220]
call fcn.004028f0
push eax
lea ecx, [ebp - 0x1d0]
call fcn.00482e90
lea ecx, [ebp - 0x220]
call fcn.00402a10
lea ecx, [ebp - 0x78]
call fcn.00402a10
lea ecx, [ebp - 0x190]
call fcn.00402a10
lea ecx, [ebp - 0x1b8]
call fcn.00402a10
mov edi, dword [ebp - 0x1bc]
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 0x10
call fcn.00480b00
mov ecx, dword [ebp - 0x40]
mov eax, 0x2aaaaaab
sub ecx, dword [ebp - 0x88]
imul ecx
mov dword [ebp - 0x7c], 0
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x40], eax
je 0x43dfbc
cmp byte [ebx + 8], 0
je 0x43c8bc
xorps xmm0, xmm0
mov dword [ebp - 0x68], 0
movups xmmword [ebp - 0x78], xmm0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
mov byte [ebp - 4], 0x18
lea edx, [ebp - 0x78]
mov eax, dword [ebp - 0x14]
or eax, 0x10
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x14], eax
mov esi, eax
mov dword [ebp - 0x18], eax
jmp 0x43c9bd
movaps xmm0, xmmword [0x5481b0]
xor ecx, ecx
mov dword [ebp - 0x56], 0xe9e6c4db
mov word [ebp - 0x52], 0xe0ea
movups xmmword [ebp - 0x50], xmm0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x56], al
inc ecx
cmp ecx, 0xc
jb 0x43c8d6
mov dword [0x55d528], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x56]
mov byte [ebp - 0x4a], 0
movups xmmword [ebp - 0xe4], xmm0
mov dword [ebp - 0xd4], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xd0], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43c912
sub ecx, edx
lea eax, [ebp - 0x56]
push ecx
push eax
lea ecx, [ebp - 0xe4]
call fcn.00402b80
mov eax, dword [ebp - 0x7c]
lea edi, [ebp - 0xe4]
mov dword [ebp - 4], 0x19
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x88]
or esi, 0x20
cmp dword [ebp - 0xd0], 0x10
lea eax, [eax + eax*2]
mov dword [ebp - 0x18], esi
cmovae edi, dword [ebp - 0xe4]
lea edx, [ecx + eax*8]
mov ecx, edi
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x24], eax
lea eax, [ecx + 1]
mov dword [ebp - 0x20], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43c970
sub ecx, dword [ebp - 0x20]
mov eax, closesocket
sub eax, dword [ebp - 0x24]
cmp eax, ecx
jb 0x43e11b
cmp dword [edx + 0x14], 0x10
jb 0x43c992
mov edx, dword [edx]
push ecx
push edi
push dword [ebp - 0x24]
push edx
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xc0]
call fcn.0048aa20
lea eax, [ebp - 0xc0]
mov dword [ebp - 4], 0x1a
or esi, 0x40
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x18], esi
xorps xmm0, xmm0
mov byte [ebp - 0xef], 0xdb
movq qword [ebp - 0xee], xmm0
xor ecx, ecx
mov word [ebp - 0xe6], 0
nop word [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0xef], al
inc ecx
cmp ecx, 1
jb 0x43c9e0
mov dword [0x55d620], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0xef]
mov byte [ebp - 0xee], 0
movups xmmword [ebp - 0x3c], xmm0
mov dword [ebp - 0x2c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x28], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43ca20
sub ecx, edx
lea eax, [ebp - 0xef]
push ecx
push eax
lea ecx, [ebp - 0x3c]
call fcn.00402b80
or esi, 0x1000000
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 0x1b
lea edi, [ebp - 0x3c]
cmp dword [ebp - 0x28], 0x10
cmovae edi, dword [ebp - 0x3c]
mov ecx, edi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43ca60
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x118]
sub eax, edx
cmp eax, ecx
jb 0x43e11b
cmp dword [ebp - 0x114], 0x10
lea eax, [ebp - 0x128]
push ecx
cmovae eax, dword [ebp - 0x128]
push edi
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xa8]
call fcn.0048aa20
or esi, 0x40000000
mov dword [ebp - 0x18], esi
sub esp, 0x18
mov byte [ebp - 4], 0x1c
mov ecx, esp
lea eax, [ebp - 0xa8]
mov dword [ebp - 0x20], ecx
push dword [ebp - 0x24]
push eax
push dword [ebp - 0x20]
call fcn.0048a830
or esi, 0x80000000
lea ecx, [ebp - 0x1b8]
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x18], esi
call fcn.0040d3d0
add esp, 0x18
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x94]
cmp ecx, 0x10
jb 0x43cb24
mov edx, dword [ebp - 0xa8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43cb1a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x10
jb 0x43cb5c
mov edx, dword [ebp - 0x3c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43cb52
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x20
mov eax, dword [ebp - 0x14]
test al, 0x40
je 0x43cbad
mov ecx, dword [ebp - 0xac]
and eax, 0xffffffbf
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp ecx, 0x10
jb 0x43cbad
mov edx, dword [ebp - 0xc0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43cba0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
mov eax, dword [ebp - 0x14]
add esp, 8
mov byte [ebp - 4], 0x21
test al, 0x20
je 0x43cbfb
mov ecx, dword [ebp - 0xd0]
and eax, 0xffffffdf
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp ecx, 0x10
jb 0x43cbfb
mov edx, dword [ebp - 0xe4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43cbee
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
mov eax, dword [ebp - 0x14]
add esp, 8
mov byte [ebp - 4], 0x22
test al, 0x10
je 0x43cc40
mov ecx, dword [ebp - 0x64]
and eax, 0xffffffef
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp ecx, 0x10
jb 0x43cc40
mov edx, dword [ebp - 0x78]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43cc36
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
xorps xmm0, xmm0
xor ecx, ecx
mov edx, 0xf
mov dword [ebp - 0x168], ecx
movups xmmword [ebp - 0x178], xmm0
mov dword [ebp - 0x164], edx
mov byte [ebp - 0x178], cl
mov byte [ebp - 4], 0x23
cmp dword [ebp - 0x1a8], ecx
je 0x43d250
cmp dword [ebp - 0x1c0], ecx
jne 0x43d250
sub esp, 0x28
lea edx, [ebp - 0x1b8]
mov eax, esp
push ecx
mov dword [eax + 0x24], ecx
lea ecx, [ebp - 0x160]
push 1
call fcn.00487220
add esp, 0x30
mov byte [ebp - 4], 0x24
xor ecx, ecx
movaps xmm0, xmmword [0x5482c0]
mov word [ebp - 0xde], 0xfbe8
movups xmmword [ebp - 0xdc], xmm0
nop dword [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0xde], al
inc ecx
cmp ecx, 8
jb 0x43ccc0
mov dword [0x55d624], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0xde]
mov byte [ebp - 0xd6], 0
movups xmmword [ebp - 0x78], xmm0
mov dword [ebp - 0x68], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x64], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43cd00
sub ecx, edx
lea eax, [ebp - 0xde]
push ecx
push eax
lea ecx, [ebp - 0x78]
call fcn.00402b80
mov byte [ebp - 4], 0x25
lea eax, [ebp - 0x78]
mov esi, dword [ebp - 0x14]
lea ecx, [ebp - 0x160]
or esi, 0x80
cmp dword [ebp - 0x64], 0x10
mov dword [ebp - 0x14], esi
cmovae eax, dword [ebp - 0x78]
push eax
mov dword [ebp - 0x18], esi
call fcn.00486ff0
cmp byte [eax], 0
je 0x43cea1
movaps xmm0, xmmword [0x5482c0]
xor ecx, ecx
mov word [ebp - 0x52], 0xfbe8
movups xmmword [ebp - 0x50], xmm0
nop
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x52], al
inc ecx
cmp ecx, 8
jb 0x43cd60
mov dword [0x55d624], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x52]
mov byte [ebp - 0x4a], 0
movups xmmword [ebp - 0xa8], xmm0
mov dword [ebp - 0x98], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x94], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43cda0
sub ecx, edx
lea eax, [ebp - 0x52]
push ecx
push eax
lea ecx, [ebp - 0xa8]
call fcn.00402b80
mov dword [ebp - 4], 0x26
lea eax, [ebp - 0xa8]
or esi, 0x100
lea ecx, [ebp - 0x160]
cmp dword [ebp - 0x94], 0x10
mov dword [ebp - 0x18], esi
cmovae eax, dword [ebp - 0xa8]
push eax
call fcn.00486ff0
movaps xmm0, xmmword [0x547c00]
mov edi, eax
mov dword [ebp - 0x3b], 0xf8eae6e2
xor ecx, ecx
mov word [ebp - 0x37], 0xfcf2
mov byte [ebp - 0x35], 0xf9
movups xmmword [ebp - 0x34], xmm0
nop dword [eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x3b], al
inc ecx
cmp ecx, 0xd
jb 0x43ce10
mov dword [0x55d57c], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x3b]
mov byte [ebp - 0x2e], 0
movups xmmword [ebp - 0xc0], xmm0
mov dword [ebp - 0xb0], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xac], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43ce50
sub ecx, edx
lea eax, [ebp - 0x3b]
push ecx
push eax
lea ecx, [ebp - 0xc0]
call fcn.00402b80
mov dword [ebp - 4], 0x27
lea eax, [ebp - 0xc0]
or esi, 0x200
mov ecx, edi
cmp dword [ebp - 0xac], 0x10
mov dword [ebp - 0x14], esi
cmovae eax, dword [ebp - 0xc0]
push eax
mov dword [ebp - 0x18], esi
call fcn.00486ff0
mov byte [ebp - 0x19], 1
cmp byte [eax], 0
jne 0x43cea5
mov byte [ebp - 0x19], 0
mov dword [ebp - 4], 0x26
mov eax, dword [ebp - 0x14]
test eax, 0x200
je 0x43cefe
mov ecx, dword [ebp - 0xac]
and eax, 0xfffffdff
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp ecx, 0x10
jb 0x43cefe
mov edx, dword [ebp - 0xc0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43cef1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
mov eax, dword [ebp - 0x14]
add esp, 8
mov dword [ebp - 4], 0x25
test eax, 0x100
je 0x43cf54
mov ecx, dword [ebp - 0x94]
and eax, 0xfffffeff
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp ecx, 0x10
jb 0x43cf54
mov edx, dword [ebp - 0xa8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43cf47
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
mov eax, dword [ebp - 0x14]
add esp, 8
mov dword [ebp - 4], 0x24
test al, al
jns 0x43cf9e
mov ecx, dword [ebp - 0x64]
and eax, 0xffffff7f
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp ecx, 0x10
jb 0x43cf9e
mov edx, dword [ebp - 0x78]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43cf94
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
cmp byte [ebp - 0x19], 0
je 0x43d235
movaps xmm0, xmmword [0x5482c0]
xor ecx, ecx
mov word [ebp - 0x52], 0xfbe8
movups xmmword [ebp - 0x50], xmm0
nop dword [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x52], al
inc ecx
cmp ecx, 8
jb 0x43cfc0
mov dword [0x55d624], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x52]
mov byte [ebp - 0x4a], 0
movups xmmword [ebp - 0xa8], xmm0
mov dword [ebp - 0x98], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x94], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d000
sub ecx, edx
lea eax, [ebp - 0x52]
push ecx
push eax
lea ecx, [ebp - 0xa8]
call fcn.00402b80
mov byte [ebp - 4], 0x28
lea eax, [ebp - 0xa8]
cmp dword [ebp - 0x94], 0x10
lea ecx, [ebp - 0x160]
cmovae eax, dword [ebp - 0xa8]
push eax
call fcn.00486ff0
movaps xmm0, xmmword [0x547c00]
mov esi, eax
mov dword [ebp - 0x3b], 0xf8eae6e2
xor ecx, ecx
mov word [ebp - 0x37], 0xfcf2
mov byte [ebp - 0x35], 0xf9
movups xmmword [ebp - 0x34], xmm0
nop dword [eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x3b], al
inc ecx
cmp ecx, 0xd
jb 0x43d060
mov dword [0x55d57c], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x3b]
mov byte [ebp - 0x2e], 0
movups xmmword [ebp - 0x78], xmm0
mov dword [ebp - 0x68], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x64], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d093
sub ecx, edx
lea eax, [ebp - 0x3b]
push ecx
push eax
lea ecx, [ebp - 0x78]
call fcn.00402b80
mov byte [ebp - 4], 0x29
lea eax, [ebp - 0x78]
cmp dword [ebp - 0x64], 0x10
mov ecx, esi
cmovae eax, dword [ebp - 0x78]
push eax
call fcn.00486ff0
lea ecx, [ebp - 0xe4]
push ecx
mov ecx, eax
call fcn.00487130
mov edx, eax
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0xc0]
call fcn.004028f0
lea ecx, [ebp - 0x178]
cmp ecx, eax
je 0x43d111
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x178], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x168], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov ecx, dword [ebp - 0xac]
cmp ecx, 0x10
jb 0x43d14b
mov edx, dword [ebp - 0xc0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d141
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp - 0xd0]
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 0xf
mov byte [ebp - 0xc0], 0
cmp ecx, 0x10
jb 0x43d1a4
mov edx, dword [ebp - 0xe4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d19a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x28
mov ecx, dword [ebp - 0x64]
mov dword [ebp - 0xd4], 0
mov dword [ebp - 0xd0], 0xf
mov byte [ebp - 0xe4], 0
cmp ecx, 0x10
jb 0x43d1f7
mov edx, dword [ebp - 0x78]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d1ed
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x24
mov ecx, dword [ebp - 0x94]
cmp ecx, 0x10
jb 0x43d235
mov edx, dword [ebp - 0xa8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d22b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x23
call fcn.00480b00
mov ecx, dword [ebp - 0x168]
mov edx, dword [ebp - 0x164]
test ecx, ecx
je 0x43d271
cmp edx, 0x10
lea eax, [ebp - 0x178]
push ecx
cmovae eax, dword [ebp - 0x178]
lea ecx, [ebp - 0x1d0]
push eax
call fcn.00482bf0
movaps xmm0, xmmword [0x549a60]
xor ecx, ecx
movups xmmword [ebp - 0x1ef], xmm0
mov dword [ebp - 0x1df], 0xfef5fde1
xorps xmm0, xmm0
mov byte [ebp - 0x1db], 0xf9
movq qword [ebp - 0x1da], xmm0
mov word [ebp - 0x1d2], 0
nop word [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x1ef], al
inc ecx
cmp ecx, 0x15
jb 0x43d2b0
mov dword [0x55d5ac], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x1ef]
mov byte [ebp - 0x1da], 0
movups xmmword [ebp - 0xc0], xmm0
mov dword [ebp - 0xb0], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xac], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d2f5
sub ecx, edx
lea eax, [ebp - 0x1ef]
push ecx
push eax
lea ecx, [ebp - 0xc0]
call fcn.00402b80
mov eax, dword [ebp - 0x14]
or eax, 0x4000000
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0xc0]
cmp dword [ebp - 0xac], 0x10
cmovae ecx, dword [ebp - 0xc0]
cmp byte [ebx + 8], 0
mov dword [ebp - 0x90], ecx
jne 0x43d474
cmp dword [ebp - 0x40], 1
jne 0x43d35d
mov ecx, dword [ebp - 0x88]
cmp dword [ecx + 0x10], 0
je 0x43d474
xorps xmm0, xmm0
mov byte [ebp - 0x141], 0xdb
movq qword [ebp - 0x140], xmm0
xor ecx, ecx
mov word [ebp - 0x138], 0
nop word [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x141], al
inc ecx
cmp ecx, 1
jb 0x43d380
mov dword [0x55d620], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x141]
mov byte [ebp - 0x140], 0
movups xmmword [ebp - 0xa8], xmm0
mov dword [ebp - 0x98], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x94], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d3c5
sub ecx, edx
lea eax, [ebp - 0x141]
push ecx
push eax
lea ecx, [ebp - 0xa8]
call fcn.00402b80
mov eax, dword [ebp - 0x7c]
lea edi, [ebp - 0xa8]
mov byte [ebp - 4], 0x2c
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x88]
or esi, 0x400
cmp dword [ebp - 0x94], 0x10
lea eax, [eax + eax*2]
mov dword [ebp - 0x18], esi
cmovae edi, dword [ebp - 0xa8]
lea edx, [ecx + eax*8]
mov ecx, edi
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x24], eax
lea eax, [ecx + 1]
mov dword [ebp - 0x20], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d422
sub ecx, dword [ebp - 0x20]
mov eax, closesocket
sub eax, dword [ebp - 0x24]
cmp eax, ecx
jb 0x43e11b
cmp dword [edx + 0x14], 0x10
jb 0x43d444
mov edx, dword [edx]
push ecx
push edi
push dword [ebp - 0x24]
push edx
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0x190]
call fcn.0048aa20
lea edx, [ebp - 0x190]
mov dword [ebp - 4], 0x2d
or esi, 0x800
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x18], esi
jmp 0x43d4a7
xorps xmm0, xmm0
mov dword [ebp - 0x48], 0
movups xmmword [ebp - 0x58], xmm0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
or eax, 0x1000
mov dword [ebp - 4], 0x2e
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x24], ecx
mov esi, eax
mov dword [ebp - 0x18], eax
xorps xmm0, xmm0
mov byte [ebp - 0xcb], 0xdb
movq qword [ebp - 0xca], xmm0
xor ecx, ecx
mov word [ebp - 0xc2], 0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0xcb], al
inc ecx
cmp ecx, 1
jb 0x43d4c4
mov dword [0x55d620], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0xcb]
mov byte [ebp - 0xca], 0
movups xmmword [ebp - 0x78], xmm0
mov dword [ebp - 0x68], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x64], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d500
sub ecx, edx
lea eax, [ebp - 0xcb]
push ecx
push eax
lea ecx, [ebp - 0x78]
call fcn.00402b80
or esi, 0x8000000
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 0x2f
lea edi, [ebp - 0x78]
cmp dword [ebp - 0x64], 0x10
cmovae edi, dword [ebp - 0x78]
mov ecx, edi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d540
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x118]
sub eax, edx
cmp eax, ecx
jb 0x43e11b
cmp dword [ebp - 0x114], 0x10
lea eax, [ebp - 0x128]
push ecx
cmovae eax, dword [ebp - 0x128]
push edi
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xe4]
call fcn.0048aa20
or esi, 0x20000000
mov dword [ebp - 0x18], esi
push dword [ebp - 0x24]
lea eax, [ebp - 0xe4]
mov byte [ebp - 4], 0x30
push eax
push dword [ebp - 0x20]
lea ecx, [ebp - 0x3c]
call fcn.0048a830
or esi, 0x2000000
mov dword [ebp - 0x18], esi
push dword [ebp - 0x90]
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x31
call fcn.00482d20
or esi, 0x10000000
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x18], esi
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x220], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x210], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x33
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x10
jb 0x43d62e
mov edx, dword [ebp - 0x3c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d624
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0xf
mov byte [ebp - 0x3c], 0
mov byte [ebp - 4], 0x34
mov ecx, dword [ebp - 0xd0]
cmp ecx, 0x10
jb 0x43d67e
mov edx, dword [ebp - 0xe4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d674
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x35
mov ecx, dword [ebp - 0x64]
cmp ecx, 0x10
jb 0x43d6b6
mov edx, dword [ebp - 0x78]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d6ac
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x36
mov eax, dword [ebp - 0x14]
test eax, 0x1000
je 0x43d706
mov ecx, dword [ebp - 0x44]
and eax, 0xffffefff
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp ecx, 0x10
jb 0x43d706
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d6f9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
mov eax, dword [ebp - 0x14]
add esp, 8
mov byte [ebp - 4], 0x37
test eax, 0x800
je 0x43d759
mov ecx, dword [ebp - 0x17c]
and eax, 0xfffff7ff
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp ecx, 0x10
jb 0x43d759
mov edx, dword [ebp - 0x190]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d74c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
mov eax, dword [ebp - 0x14]
add esp, 8
mov byte [ebp - 4], 0x38
test eax, 0x400
je 0x43d7a9
mov ecx, dword [ebp - 0x94]
and eax, 0xfffffbff
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp ecx, 0x10
jb 0x43d7a9
mov edx, dword [ebp - 0xa8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d79f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x39
mov ecx, dword [ebp - 0xac]
cmp ecx, 0x10
jb 0x43d7e7
mov edx, dword [ebp - 0xc0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d7dd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
sub esp, 0x18
lea eax, [ebp - 0x220]
mov ecx, esp
push eax
call fcn.00483010
push 1
xor dl, dl
lea ecx, [ebp - 0x100]
call fcn.00427910
add esp, 0x1c
mov byte [ebp - 4], 0x3a
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0xfc]
sub ecx, dword [ebp - 0x100]
imul ecx
mov dword [ebp - 0x8c], 0
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x43dee1
xor edi, edi
mov dword [ebp - 0x60], edi
xorps xmm0, xmm0
mov dword [ebp - 0x136], 0xede6e4a9
movq qword [ebp - 0x132], xmm0
xor ecx, ecx
mov word [ebp - 0x12a], 0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x136], al
inc ecx
cmp ecx, 4
jb 0x43d860
mov dword [0x55d5d8], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x136]
mov byte [ebp - 0x132], 0
movups xmmword [ebp - 0xe4], xmm0
mov dword [ebp - 0xd4], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xd0], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d8a5
sub ecx, edx
lea eax, [ebp - 0x136]
push ecx
push eax
lea ecx, [ebp - 0xe4]
call fcn.00402b80
mov eax, dword [ebp - 0x14]
or eax, 0x80000
mov byte [ebp - 4], 0x3b
lea edx, [ebp - 0xe4]
or eax, 0x2000
mov dword [ebp - 0xb0], 0
cmp dword [ebp - 0xd0], 0x10
xorps xmm0, xmm0
mov dword [ebp - 0x14], eax
cmovae edx, dword [ebp - 0xe4]
mov ecx, edx
mov dword [ebp - 0x18], eax
movups xmmword [ebp - 0xc0], xmm0
mov dword [ebp - 0xac], 0
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d910
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0xc0]
call fcn.00402b80
mov dword [ebp - 4], 0x3c
mov edx, dword [ebp - 0x100]
mov eax, dword [ebp - 0x14]
add edx, edi
or eax, 0x4000
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp dword [edx + 0x14], 0x10
jb 0x43d94b
mov edx, dword [edx]
mov ecx, edx
mov dword [ebp - 0x98], 0
xorps xmm0, xmm0
mov dword [ebp - 0x94], 0
movups xmmword [ebp - 0xa8], xmm0
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d970
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0xa8]
call fcn.00402b80
mov dword [ebp - 4], 0x3d
mov eax, dword [ebp - 0x14]
mov edi, dword [ebp - 0xb0]
or eax, 0x8000
mov edx, dword [ebp - 0xc0]
mov ecx, dword [ebp - 0xa8]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x5c], ecx
cmp eax, edi
jb 0x43da15
mov ecx, eax
sub ecx, edi
cmp eax, ecx
jb 0x43e12a
cmp dword [ebp - 0xac], 0x10
lea esi, [ebp - 0xc0]
push edi
cmovae esi, edx
sub eax, ecx
cmp eax, edi
mov edx, edi
push esi
cmovb edx, eax
cmp dword [ebp - 0x94], 0x10
lea eax, [ebp - 0xa8]
cmovae eax, dword [ebp - 0x5c]
add ecx, eax
call fcn.00488540
add esp, 8
test eax, eax
jne 0x43da15
mov edx, dword [ebp - 0x3c]
mov edi, dword [ebp - 0x58]
mov dword [ebp - 0x24], edx
mov byte [ebp - 0x19], 1
jmp 0x43dba4
xorps xmm0, xmm0
mov dword [ebp - 0x10e], 0xe8ede4a9
movq qword [ebp - 0x10a], xmm0
xor ecx, ecx
mov word [ebp - 0x102], 0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x10e], al
inc ecx
cmp ecx, 4
jb 0x43da35
mov dword [0x55d5d8], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x10e]
mov byte [ebp - 0x10a], 0
movups xmmword [ebp - 0x78], xmm0
mov dword [ebp - 0x68], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x64], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43da71
sub ecx, edx
lea eax, [ebp - 0x10e]
push ecx
push eax
lea ecx, [ebp - 0x78]
call fcn.00402b80
mov eax, dword [ebp - 0x14]
or eax, 0x100000
mov dword [ebp - 4], 0x3e
lea edx, [ebp - 0x78]
or eax, 0x10000
mov dword [ebp - 0x2c], 0
cmp dword [ebp - 0x64], 0x10
xorps xmm0, xmm0
mov dword [ebp - 0x14], eax
cmovae edx, dword [ebp - 0x78]
mov ecx, edx
mov dword [ebp - 0x18], eax
movups xmmword [ebp - 0x3c], xmm0
mov dword [ebp - 0x28], 0
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43dad0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x3c]
call fcn.00402b80
mov dword [ebp - 4], 0x3f
mov edx, dword [ebp - 0x100]
add edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x14]
or eax, 0x20000
mov dword [ebp - 0x14], eax
cmp dword [edx + 0x14], 0x10
mov dword [ebp - 0x18], eax
jb 0x43db09
mov edx, dword [edx]
mov ecx, edx
mov dword [ebp - 0x48], 0
xorps xmm0, xmm0
mov dword [ebp - 0x44], 0
movups xmmword [ebp - 0x58], xmm0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43db23
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x58]
call fcn.00402b80
mov dword [ebp - 4], 0x40
mov eax, dword [ebp - 0x14]
mov esi, dword [ebp - 0x2c]
or eax, 0x40000
mov edx, dword [ebp - 0x3c]
mov edi, dword [ebp - 0x58]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x24], edx
cmp eax, esi
jb 0x43dba0
mov ecx, eax
sub ecx, esi
cmp eax, ecx
jb 0x43e12a
cmp dword [ebp - 0x28], 0x10
lea esi, [ebp - 0x3c]
push dword [ebp - 0x2c]
cmovae esi, edx
mov edx, dword [ebp - 0x2c]
sub eax, ecx
cmp eax, edx
push esi
cmovb edx, eax
cmp dword [ebp - 0x44], 0x10
lea eax, [ebp - 0x58]
cmovae eax, edi
add ecx, eax
call fcn.00488540
add esp, 8
test eax, eax
jne 0x43dba0
mov byte [ebp - 0x19], 1
jmp 0x43dba4
mov byte [ebp - 0x19], 0
mov dword [ebp - 4], 0x3f
mov eax, dword [ebp - 0x14]
test eax, 0x40000
je 0x43dbf4
mov ecx, dword [ebp - 0x44]
and eax, 0xfffbffff
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp ecx, 0x10
jb 0x43dbf4
inc ecx
mov eax, edi
cmp ecx, 0x1000
jb 0x43dbe7
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edi
call fcn.004fb0f1
mov eax, dword [ebp - 0x14]
add esp, 8
mov dword [ebp - 4], 0x3e
test eax, 0x20000
je 0x43dc44
mov ecx, dword [ebp - 0x28]
and eax, 0xfffdffff
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp ecx, 0x10
jb 0x43dc44
mov edx, dword [ebp - 0x24]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43dc37
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
mov eax, dword [ebp - 0x14]
add esp, 8
mov dword [ebp - 4], 0x3d
test eax, 0x10000
je 0x43dc94
mov ecx, dword [ebp - 0x64]
and eax, 0xfffeffff
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp ecx, 0x10
jb 0x43dc94
mov edx, dword [ebp - 0x78]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43dc87
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
mov eax, dword [ebp - 0x14]
add esp, 8
mov dword [ebp - 4], 0x3c
test eax, 0x8000
je 0x43dce7
mov ecx, dword [ebp - 0x94]
and eax, 0xffff7fff
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp ecx, 0x10
jb 0x43dce7
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43dcda
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
mov eax, dword [ebp - 0x14]
add esp, 8
mov dword [ebp - 4], 0x3b
test eax, 0x4000
je 0x43dd3a
mov ecx, dword [ebp - 0xac]
and eax, 0xffffbfff
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp ecx, 0x10
jb 0x43dd3a
mov edx, dword [ebp - 0x20]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43dd2d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
mov eax, dword [ebp - 0x14]
add esp, 8
mov dword [ebp - 4], 0x3a
test eax, 0x2000
je 0x43dd8d
mov ecx, dword [ebp - 0xd0]
and eax, 0xffffdfff
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], eax
cmp ecx, 0x10
jb 0x43dd8d
mov edx, dword [ebp - 0xe4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43dd83
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
cmp byte [ebp - 0x19], 0
je 0x43dea6
sub esp, 0x18
lea eax, [ebp - 0x1d0]
mov ecx, esp
mov dword [ebp - 0x20], esp
push eax
call fcn.00483010
sub esp, 0x18
mov byte [ebp - 4], 0x41
mov eax, dword [ebp - 0x100]
mov ecx, esp
add eax, dword [ebp - 0x60]
push eax
call fcn.00483010
lea ecx, [ebp - 0x1a0]
mov byte [ebp - 4], 0x3a
call fcn.0043b460
add esp, 0x30
xor ecx, ecx
mov byte [ebp - 4], 0x42
mov esi, dword [ebp - 0x1a0]
mov eax, 0x38e38e39
mov dword [ebp - 0x5c], ecx
mov ecx, dword [ebp - 0x19c]
sub ecx, esi
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x43de97
xor edi, edi
mov dword [ebp - 0x24], edi
nop dword [eax + eax]
mov eax, dword [ebp - 0xf4]
add edi, esi
push edi
mov esi, dword [eax + 4]
cmp esi, dword [eax + 8]
je 0x43de5b
mov ecx, esi
mov dword [ebp - 0x20], esi
call fcn.00483010
lea eax, [edi + 0x18]
mov byte [ebp - 4], 0x43
lea ecx, [esi + 0x18]
push eax
call fcn.00483010
lea eax, [edi + 0x30]
mov byte [ebp - 4], 0x44
lea ecx, [esi + 0x30]
push eax
call fcn.00483010
mov byte [ebp - 4], 0x42
mov eax, dword [ebp - 0xf4]
add dword [eax + 4], 0x48
jmp 0x43de63
push esi
mov ecx, eax
call fcn.0048ecb0
mov ecx, dword [ebp - 0x19c]
mov eax, 0x38e38e39
mov esi, dword [ebp - 0x1a0]
sub ecx, esi
mov edi, dword [ebp - 0x24]
inc dword [ebp - 0x5c]
add edi, 0x48
imul ecx
mov dword [ebp - 0x24], edi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x5c], eax
jb 0x43de10
lea ecx, [ebp - 0x1a0]
mov byte [ebp - 4], 0x3a
call fcn.00480050
mov ecx, dword [ebp - 0xfc]
mov eax, 0x2aaaaaab
sub ecx, dword [ebp - 0x100]
mov esi, dword [ebp - 0x8c]
mov edi, dword [ebp - 0x60]
inc esi
imul ecx
add edi, 0x18
mov dword [ebp - 0x8c], esi
sar edx, 2
mov eax, edx
mov dword [ebp - 0x60], edi
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x43d840
lea ecx, [ebp - 0x100]
call fcn.00485200
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x20c]
cmp ecx, 0x10
jb 0x43df2a
mov edx, dword [ebp - 0x220]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43df20
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x164]
cmp ecx, 0x10
jb 0x43df68
mov edx, dword [ebp - 0x178]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43df5e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x1a4]
cmp ecx, 0x10
jb 0x43dfa6
mov edx, dword [ebp - 0x1b8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43df9c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov esi, dword [ebp - 0x7c]
inc esi
mov dword [ebp - 0x7c], esi
cmp esi, dword [ebp - 0x40]
jb 0x43c880
mov edi, dword [ebp - 0x1bc]
cmp edi, 0x10
jb 0x43dff2
mov edx, dword [ebp - 0x1d0]
lea ecx, [edi + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x43dfe8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov ecx, dword [ebp - 0x1f4]
cmp ecx, 0x10
jb 0x43e02c
mov edx, dword [ebp - 0x208]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43e022
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
lea ecx, [ebp - 0x88]
mov dword [ebp - 0x1f8], 0
mov dword [ebp - 0x1f4], 0xf
mov byte [ebp - 0x208], 0
call fcn.00485200
mov ecx, dword [ebp - 0x114]
cmp ecx, 0x10
jb 0x43e08c
mov edx, dword [ebp - 0x128]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43e082
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov ecx, dword [ebx + 0x20]
cmp ecx, 0x10
jb 0x43e0c0
mov edx, dword [ebx + 0xc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43e0b6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov ecx, dword [ebx + 0x38]
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x20], 0xf
mov byte [ebx + 0xc], 0
cmp ecx, 0x10
jb 0x43e102
mov edx, dword [ebx + 0x24]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43e0f8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43e125
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov eax, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.004023f0
call fcn.004023f0
call fcn.00500390
call fcn.004865a0
int3