Function at 0x464600
Capabilities:
Encode data using xor
Terminate process

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 0x4e0cb7
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x2d0
mov eax, dword [0x534094]
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, ecx
mov dword [ebp - 0x230], esi
mov dword [ebp - 4], 2
mov eax, dword [0x543ea0]
mov eax, dword [eax]
cmp dword [eax + 4], 0xffffffff
jne 0x464728
mov ecx, dword [ebx + 0x1c]
cmp ecx, 0x10
jb 0x464695
mov edx, dword [ebx + 8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x46468b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x465643
push ecx
push edx
call fcn.004b43c2
add esp, 8
mov ecx, dword [ebx + 0x34]
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0xf
mov byte [ebx + 8], 0
cmp ecx, 0x10
jb 0x4646db
mov edx, dword [ebx + 0x20]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4646d1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x465643
push ecx
push edx
call fcn.004b43c2
add esp, 8
mov ecx, dword [ebx + 0x4c]
mov dword [ebx + 0x30], 0
mov dword [ebx + 0x34], 0xf
mov byte [ebx + 0x20], 0
cmp ecx, 0x10
jb 0x464721
mov edx, dword [ebx + 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x464717
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x465643
push ecx
push edx
call fcn.004b43c2
add esp, 8
xor al, al
jmp 0x465458
call fcn.00464450
test al, al
je 0x4647d8
movaps xmm0, xmmword [0x52db90]
xor ecx, ecx
movups xmmword [ebp - 0x1e0], xmm0
mov word [ebp - 0x180], 0x7939
movaps xmm0, xmmword [0x52dbe0]
movups xmmword [ebp - 0x1d0], xmm0
mov byte [ebp - 0x17e], 0
movaps xmm0, xmmword [0x52dfa0]
movups xmmword [ebp - 0x1c0], xmm0
movaps xmm0, xmmword [0x52dbb0]
movups xmmword [ebp - 0x1b0], xmm0
movaps xmm0, xmmword [0x52dba0]
movups xmmword [ebp - 0x1a0], xmm0
movaps xmm0, xmmword [0x52dc00]
movups xmmword [ebp - 0x190], xmm0
nop dword [eax + eax]
mov al, byte [ebp - 0x1e0]
xor byte [ebp + ecx - 0x1df], al
inc ecx
cmp ecx, 0x61
jb 0x4647a0
push 0x30
push str.AVCISOFT
lea eax, [ebp - 0x1df]
mov byte [ebp - 0x17e], 0
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov ax, word [esi + 0x274]
cmp ax, word [esi + 0x270]
jge 0x465589
push 0x130
lea eax, [ebp - 0x178]
push 0
push eax
call fcn.004b6520
sub esp, 0x1c
lea ecx, [ebp - 0x178]
mov eax, esp
mov dword [eax], 0x52d818
mov dword [eax + 0x24], eax
call fcn.00444950
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x25c]
push 0
xorps xmm0, xmm0
mov dword [ebp - 0x270], 1
push 0x52a333
mov byte [ebp - 0x229], 0
movups xmmword [ebp - 0x25c], xmm0
mov dword [ebp - 0x24c], 0
mov dword [ebp - 0x248], 0
call fcn.00449030
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x288]
push 0
xorps xmm0, xmm0
mov dword [ebp - 0x278], 0
push 0x52a333
movups xmmword [ebp - 0x288], xmm0
mov dword [ebp - 0x274], 0
call fcn.00449030
lea eax, [ebp - 0x270]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x229]
mov dword [ebp - 0x238], 0x15
push eax
lea eax, [ebp - 0x25c]
push eax
lea eax, [ebp - 0x288]
push eax
lea eax, [ebp - 0x238]
push eax
lea eax, [ebx + 8]
push eax
lea ecx, [ebp - 0x178]
call fcn.00444f40
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x274]
cmp ecx, 0x10
jb 0x46490f
mov edx, dword [ebp - 0x288]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x464905
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46567a
push ecx
push edx
call fcn.004b43c2
add esp, 8
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x248]
cmp ecx, 0x10
jb 0x46494d
mov edx, dword [ebp - 0x25c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x464943
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46567a
push ecx
push edx
call fcn.004b43c2
add esp, 8
lea eax, [ebp - 0x2e0]
mov dword [ebp - method.std::_Func_impl_no_alloc_int____cdecl___void___double__double__double__double___int__void___double__double__double__double_.virtual_0], vtable.std::_Func_impl_no_alloc_int____cdecl___void___double__double__double__double___int__void___double__double__double__double_.0
mov dword [ebp - 0x2dc], 0x464200
mov dword [ebp - 0x2bc], eax
mov byte [ebp - 4], 6
lea ecx, [ebp - 0xb0]
push eax
mov dword [ebp - 0x7c], 0xffffffff
call fcn.00445d50
mov eax, dword [ebp - 0xb8]
xorps xmm0, xmm0
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x2bc]
mov dword [ebp - 0x80], eax
movsd qword [ebp - 0x88], xmm0
mov byte [ebp - 0x78], 1
test ecx, ecx
je 0x4649bd
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
lea eax, [ebp - 0x2e0]
cmp ecx, eax
setne al
push eax
call edx
lea edi, [esi + 8]
lea eax, [ebx + 0x38]
cmp edi, eax
je 0x4649da
cmp dword [ebx + 0x4c], 0x10
mov ecx, edi
push dword [ebx + 0x48]
cmovae eax, dword [ebx + 0x38]
push eax
call fcn.00443820
mov ecx, dword [ebx + 0x30]
mov eax, closesocket
sub eax, ecx
cmp eax, 1
jb 0x465648
cmp dword [ebx + 0x34], 0x10
lea eax, [ebx + 0x20]
push 1
cmovae eax, dword [ebx + 0x20]
push 0x52a520
push ecx
push eax
push ecx
push dword [ebp - 0x230]
lea ecx, [ebp - 0x288]
call fcn.00449b30
mov byte [ebp - 4], 7
lea edx, [ebx + 0x38]
cmp dword [ebx + 0x4c], 0x10
mov eax, dword [ebp - 0x278]
cmovae edx, dword [ebx + 0x38]
mov ecx, dword [ebx + 0x48]
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x274]
sub eax, dword [ebp - 0x270]
mov dword [ebp - 0x238], ecx
push ecx
push edx
cmp ecx, eax
ja 0x464a8f
mov esi, dword [ebp - 0x270]
cmp dword [ebp - 0x274], 0x10
lea eax, [esi + ecx]
mov dword [ebp - 0x278], eax
lea eax, [ebp - 0x288]
cmovae eax, dword [ebp - 0x288]
add esi, eax
push esi
call fcn.004b6680
mov eax, dword [ebp - 0x238]
add esp, 0xc
mov byte [esi + eax], 0
lea eax, [ebp - 0x288]
mov esi, dword [ebp - 0x230]
jmp 0x464aa1
push dword [ebp - 0x230]
push ecx
lea ecx, [ebp - 0x288]
call fcn.00448ed0
xorps xmm0, xmm0
mov dword [ebp - 0x290], 0
movups xmmword [ebp - 0x2a0], xmm0
mov dword [ebp - 0x28c], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2a0], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x290], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 8
cmp dword [ebx + 0x48], 0
je 0x464f45
cmp dword [ebp - 0x290], 0
je 0x464f45
mov eax, dword [ebp - 0xb8]
test eax, eax
jne 0x464ba1
test byte [ebp - 0x104], 1
je 0x464f45
push 0x4e
xorps xmm0, xmm0
mov dword [ebp - 0x24c], eax
push str._FTPClient__Error__Curl_session_is_not_initialized___Use_InitSession___before.
lea ecx, [ebp - 0x25c]
mov dword [ebp - 0x248], eax
movups xmmword [ebp - 0x25c], xmm0
call fcn.00449030
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x4c]
test ecx, ecx
je 0x46564d
mov eax, dword [ecx]
lea edx, [ebp - 0x25c]
push edx
call dword [eax + 8]
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x248]
cmp ecx, 0x10
jb 0x464f45
mov edx, dword [ebp - 0x25c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x464f3b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x465652
jmp 0x464f3b
push eax
call fcn.004696b0
add esp, 4
mov byte [ebp - 0x229], 0
lea eax, [ebp - 0x2a0]
lea ecx, [ebp - 0x178]
push eax
lea eax, [ebp - 0x44]
push eax
call fcn.00445250
push 0xb0
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0xa
push 0
push eax
call fcn.004b6520
add esp, 8
lea ecx, [ebp - 0x228]
call fcn.00446dc0
mov byte [ebp - 4], 0xb
lea eax, [ebx + 0x38]
cmp dword [ebx + 0x4c], 0x10
lea ecx, [ebp - 0x224]
cmovae eax, dword [ebx + 0x38]
sub esp, 8
push eax
call fcn.00448130
test eax, eax
lea ecx, [ebp - 0x228]
mov eax, dword [ebp - 0x228]
je 0x464c2c
add ecx, dword [eax + 4]
xor edx, edx
mov eax, 4
cmp dword [ecx + 0x38], edx
cmovne eax, edx
jmp 0x464c41
add ecx, dword [eax + 4]
xor eax, eax
cmp dword [ecx + 0x38], eax
sete al
lea eax, [eax*4 + 2]
or eax, dword [ecx + 0xc]
push 0
push eax
call fcn.00444810
mov eax, dword [ebp - 0x228]
mov eax, dword [eax + 4]
test byte [ebp + eax - 0x21c], 6
jne 0x464e01
cmp dword [ebp - 0x30], 0x10
lea eax, [ebp - 0x44]
cmovae eax, dword [ebp - 0x44]
push eax
push 0x2712
push dword [ebp - 0xb8]
call fcn.0046dbb0
add esp, 0xc
push 0x445cf0
push 0x4e2b
push dword [ebp - 0xb8]
call fcn.0046dbb0
add esp, 0xc
lea eax, [ebp - 0x228]
push eax
push 0x2711
push dword [ebp - 0xb8]
call fcn.0046dbb0
add esp, 0xc
lea ecx, [ebp - 0x178]
call fcn.004459c0
mov dword [ebp - 0x230], eax
test eax, eax
je 0x464d9c
test byte [ebp - 0x104], 1
je 0x464da3
push eax
call fcn.0046a1d0
add esp, 4
lea edx, [ebp - 0x2a0]
cmp dword [ebp - 0x28c], 0x10
lea ecx, [ebp - 0x140]
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x2a0]
cmp dword [ebp - 0x12c], 0x10
push eax
push dword [ebp - 0x230]
cmovae ecx, dword [ebp - 0x140]
push edx
push ecx
sub esp, 0x18
mov ecx, esp
push 0x48
movups xmmword [ecx], xmm0
push str._FTPClient__Error__Unable_to_import_remote_File__s__s__Error___d___s_.
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00449030
lea eax, [ebp - 0x2b8]
push eax
call fcn.00445b80
add esp, 0x2c
mov edx, eax
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x4c]
test ecx, ecx
je 0x465657
mov eax, dword [ecx]
push edx
call dword [eax + 8]
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x2a4]
cmp ecx, 0x10
jb 0x464da3
mov edx, dword [ebp - 0x2b8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x464d90
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46565c
push ecx
push edx
call fcn.004b43c2
add esp, 8
jmp 0x464da3
mov byte [ebp - 0x229], 1
lea ecx, [ebp - 0x224]
call fcn.00447b10
test eax, eax
jne 0x464ddb
mov eax, dword [ebp - 0x228]
lea ecx, [ebp - 0x228]
push 0
add ecx, dword [eax + 4]
xor eax, eax
cmp dword [ecx + 0x38], eax
sete al
lea eax, [eax*4 + 2]
or eax, dword [ecx + 0xc]
push eax
call fcn.00444810
cmp byte [ebp - 0x229], 0
jne 0x464e97
cmp dword [ebx + 0x4c], 0x10
lea eax, [ebx + 0x38]
cmovae eax, dword [ebx + 0x38]
push eax
call fcn.004bd6c8
add esp, 4
jmp 0x464e97
test byte [ebp - 0x104], 1
je 0x464e97
push 0x4e
xorps xmm0, xmm0
mov dword [ebp - 0x24c], 0
push str._FTPClient__Error__Unable_to_open_local_file__s_in_CFTPClient::DownloadFile__.
lea ecx, [ebp - 0x25c]
mov dword [ebp - 0x248], 0
movups xmmword [ebp - 0x25c], xmm0
call fcn.00449030
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x4c]
test ecx, ecx
je 0x465661
mov eax, dword [ecx]
lea edx, [ebp - 0x25c]
push edx
call dword [eax + 8]
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x248]
cmp ecx, 0x10
jb 0x464e97
mov edx, dword [ebp - 0x25c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x464e8d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x465666
push ecx
push edx
call fcn.004b43c2
add esp, 8
mov eax, dword [ebp - 0x228]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ofstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x228]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0x22c], eax
lea ecx, [ebp - 0x224]
call fcn.00446a60
mov eax, dword [ebp - 0x228]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ostream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x228]
mov ecx, dword [eax + 4]
lea eax, [ecx - 8]
mov dword [ebp + ecx - 0x22c], eax
lea eax, [ebp - 0x1c0]
mov byte [ebp - 4], 0xe
push eax
mov dword [ebp - method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.004b2ca8
mov byte [ebp - 4], 8
add esp, 4
mov ecx, dword [ebp - 0x30]
cmp ecx, 0x10
jb 0x464f45
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x464f3b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46566b
push ecx
push edx
call fcn.004b43c2
add esp, 8
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x28c]
cmp ecx, 0x10
jb 0x464f83
mov edx, dword [ebp - 0x2a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x464f79
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x465670
push ecx
push edx
call fcn.004b43c2
add esp, 8
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x290], 0
mov dword [ebp - 0x28c], 0xf
mov byte [ebp - 0x2a0], 0
cmp ecx, 0x10
jb 0x464fdc
mov edx, dword [ebp - 0x288]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x464fd2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x465670
push ecx
push edx
call fcn.004b43c2
add esp, 8
lea ecx, [ebp - 0x178]
call fcn.00445150
mov ecx, dword [esi + 0x18]
xorps xmm0, xmm0
add ecx, 0xfffffffc
mov dword [ebp - 0x1c], 0
cmp dword [edi + 0x10], ecx
movups xmmword [ebp - 0x2c], xmm0
cmovb ecx, dword [edi + 0x10]
cmp dword [edi + 0x14], 0x10
mov dword [ebp - 0x18], 0
jb 0x465011
mov edi, dword [edi]
push ecx
push edi
lea ecx, [ebp - 0x2c]
call fcn.00449030
mov byte [ebp - 4], 0xf
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], 0x10
cmovae eax, dword [ebp - 0x2c]
push eax
call fcn.004bffab
add esp, 4
mov word [esi + 0x274], ax
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [ebx + 0x4c], 0x10
lea ecx, [ebx + 0x38]
lea edi, [esi + 0x2c]
cmovae ecx, dword [ebx + 0x38]
mov edx, edi
sub esp, 8
call fcn.004691e0
cmp dword [ebx + 0x4c], 0x10
lea eax, [ebx + 0x38]
cmovae eax, dword [ebx + 0x38]
push eax
call fcn.004bd6c8
add esp, 0xc
mov dword [ebp - 0x26c], 0x5f69663a
mov cl, 0x3a
mov dword [ebp - 0x268], 0x485f4c48
mov dword [ebp - 0x264], 0x53545314
xor eax, eax
mov byte [ebp - 0x260], 0
nop word [eax + eax]
xor byte [ebp + eax - 0x26b], cl
inc eax
cmp eax, 0xb
jae 0x4650b5
mov cl, byte [ebp - 0x26c]
jmp 0x4650a0
mov ecx, edi
mov byte [ebp - 0x260], 0
xorps xmm0, xmm0
mov dword [ebp - 0x34], 0
movups xmmword [ebp - 0x44], xmm0
mov dword [ebp - 0x30], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4650d6
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x44]
call fcn.00449030
lea eax, [ebp - 0x26b]
mov byte [ebp - 4], 0x10
push eax
lea ecx, [ebp - 0x44]
call fcn.00447090
xorps xmm0, xmm0
mov dword [ebp - 0x24c], 0
movups xmmword [ebp - 0x25c], xmm0
mov dword [ebp - 0x248], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x25c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x24c], xmm0
mov dword [eax + 0x10], 0
lea ecx, [ebp - 0x2b8]
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x25c]
mov byte [ebp - 4], 0x11
cmp dword [ebp - 0x248], 0x10
movsx edx, word [esi + 0x274]
cmovae eax, dword [ebp - 0x25c]
mov dword [ebp - 0x230], eax
call fcn.0044add0
mov edi, eax
cmp dword [edi + 0x14], 0x10
jb 0x46517c
mov edi, dword [edi]
push dword [ebp - 0x230]
mov dh, 0x17
mov byte [ebp - 0x244], 0x1f
mov al, 0x51
mov byte [ebp - 0x238], dh
xor al, dh
mov byte [ebp - 0x229], 0x71
mov byte [ebp - 0x237], al
mov cl, 0x7e
xor cl, dh
mov byte [ebp - 0x232], 0
mov dl, 0x7b
mov byte [ebp - 0x236], cl
xor dl, dh
mov byte [ebp - 0x23c], 0
mov ah, 0x72
mov byte [ebp - 0x235], dl
xor ah, dh
mov byte [ebp - 0x232], 0
mov ch, 0x64
mov byte [ebp - 0x234], ah
xor ch, dh
mov byte [ebp - 0x23c], 0
mov al, 0x49
mov byte [ebp - 0x233], ch
xor al, byte [ebp - 0x244]
mov cl, 0x7a
mov byte [ebp - 0x243], al
mov dl, 0x6d
mov al, byte [ebp - 0x244]
mov ah, 0x6c
xor cl, al
xor dl, al
xor ah, al
mov byte [ebp - 0x242], cl
mov ch, 0x76
mov byte [ebp - 0x240], ah
xor ch, al
mov byte [ebp - 0x241], dl
mov dh, 0x70
mov byte [ebp - 0x23f], ch
xor dh, al
mov al, byte [ebp - 0x229]
xor al, byte [ebp - 0x244]
mov byte [ebp - 0x23d], al
lea eax, [ebp - 0x237]
push edi
push eax
lea eax, [ebp - 0x243]
mov byte [ebp - 0x23e], dh
push eax
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov ecx, dword [ebp - 0x2a4]
cmp ecx, 0x10
jb 0x46528d
mov edx, dword [ebp - 0x2b8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x465283
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x465675
push ecx
push edx
call fcn.004b43c2
add esp, 8
mov ecx, dword [ebp - 0x248]
mov dword [ebp - 0x2a8], 0
mov dword [ebp - 0x2a4], 0xf
mov byte [ebp - 0x2b8], 0
cmp ecx, 0x10
jb 0x4652e2
mov edx, dword [ebp - 0x25c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4652d8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x465675
push ecx
push edx
call fcn.004b43c2
add esp, 8
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x24c], 0
mov dword [ebp - 0x248], 0xf
mov byte [ebp - 0x25c], 0
cmp ecx, 0x10
jb 0x465331
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x465327
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x465675
push ecx
push edx
call fcn.004b43c2
add esp, 8
mov ax, word [esi + 0x274]
mov ecx, dword [ebp - 0x18]
cmp ax, word [esi + 0x270]
jne 0x465478
cmp ecx, 0x10
jb 0x465379
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x46536f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46567a
push ecx
push edx
call fcn.004b43c2
add esp, 8
lea ecx, [ebp - 0x178]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00444ba0
mov ecx, dword [ebx + 0x1c]
cmp ecx, 0x10
jb 0x4653ca
mov edx, dword [ebx + 8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4653c0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46567a
push ecx
push edx
call fcn.004b43c2
add esp, 8
mov ecx, dword [ebx + 0x34]
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0xf
mov byte [ebx + 8], 0
cmp ecx, 0x10
jb 0x465410
mov edx, dword [ebx + 0x20]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x465406
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46567a
push ecx
push edx
call fcn.004b43c2
add esp, 8
mov ecx, dword [ebx + 0x4c]
mov dword [ebx + 0x30], 0
mov dword [ebx + 0x34], 0xf
mov byte [ebx + 0x20], 0
cmp ecx, 0x10
jb 0x465456
mov edx, dword [ebx + 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x46544c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46567a
push ecx
push edx
call fcn.004b43c2
add esp, 8
mov al, 1
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.004b437a
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 0x48
cmp ecx, 0x10
jb 0x4654a9
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x46549f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46567a
push ecx
push edx
call fcn.004b43c2
add esp, 8
lea ecx, [ebp - 0x178]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
call fcn.00444ba0
mov ecx, dword [ebx + 0x1c]
cmp ecx, 0x10
jb 0x4654fa
mov edx, dword [ebx + 8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4654f0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46567a
push ecx
push edx
call fcn.004b43c2
add esp, 8
mov ecx, dword [ebx + 0x34]
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0xf
mov byte [ebx + 8], 0
cmp ecx, 0x10
jb 0x465540
mov edx, dword [ebx + 0x20]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x465536
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46567a
push ecx
push edx
call fcn.004b43c2
add esp, 8
mov ecx, dword [ebx + 0x4c]
mov dword [ebx + 0x30], 0
mov dword [ebx + 0x34], 0xf
mov byte [ebx + 0x20], 0
cmp ecx, 0x10
jb 0x464721
mov edx, dword [ebx + 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x464717
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46567a
jmp 0x464717
mov ecx, dword [ebx + 0x1c]
cmp ecx, 0x10
jb 0x4655bd
mov edx, dword [ebx + 8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4655b3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x465643
push ecx
push edx
call fcn.004b43c2
add esp, 8
mov ecx, dword [ebx + 0x34]
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0xf
mov byte [ebx + 8], 0
cmp ecx, 0x10
jb 0x4655ff
mov edx, dword [ebx + 0x20]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4655f5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x465643
push ecx
push edx
call fcn.004b43c2
add esp, 8
mov ecx, dword [ebx + 0x4c]
mov dword [ebx + 0x30], 0
mov dword [ebx + 0x34], 0xf
mov byte [ebx + 0x20], 0
cmp ecx, 0x10
jb 0x465456
mov edx, dword [ebx + 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x46544c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x46544c
call fcn.004bc740
call fcn.00442790
call fcn.004b2732
call fcn.004bc740
call fcn.004b2732
call fcn.004bc740
call fcn.004b2732
call fcn.004bc740
call fcn.004bc740
call fcn.004bc740
call fcn.004bc740
call fcn.004bc740
int3