Function at 0x46df3a
Capabilities:
Send data
Send data on socket

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 0x6016de
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x168
mov eax, dword [0x65e374]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x160], ecx
mov esi, dword [ebx + 8]
lea ecx, [ebp - 0x88]
mov dword [ebp - 0x15c], esi
mov dword [ebp - 0x18], 0
lea eax, [esi + 4]
push eax
call fcn.00405df0
lea eax, [esi + 0x1c]
mov dword [ebp - 4], 0
push eax
lea ecx, [ebp - 0xa0]
call fcn.00405df0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x88]
cmp dword [ebp - 0x74], 0x10
mov esi, dword [ebp - 0x88]
mov edi, dword [ebp - 0x78]
cmovae ecx, esi
push 7
push str.install
mov edx, edi
call fcn.00408bb0
add esp, 8
test al, al
je 0x46dea0
mov edi, dword [ebp - 0x15c]
mov esi, dword [edi + 0x34]
mov dword [ebp - 0x15c], esi
mov dword [ebp - 0x4c], esi
inc dword [esi + 0x48]
sub esp, 0x18
mov byte [ebp - 4], 2
mov ecx, esp
push 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push 0x6292df
mov byte [ecx], 0
call fcn.00403030
inc dword [esi + 0x48]
push ecx
push 1
push ecx
mov ecx, dword [ebp - 0x160]
mov eax, esp
mov dword [eax], esi
lea eax, [ebp - 0x30]
push eax
call fcn.00474190
sub esp, 0x18
mov byte [ebp - 4], 3
lea eax, [ebp - 0x30]
mov ecx, esp
push eax
call fcn.00405df0
cmp dword [ebp - 0x1c], 0x10
lea ecx, [ebp - 0x30]
mov edx, dword [ebp - 0x20]
cmovae ecx, dword [ebp - 0x30]
push 2
push 0x630220
call fcn.00408bb0
movzx eax, al
add esp, 8
xor eax, 1
add eax, 0xc8
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.004a2a00
mov ecx, dword [edi]
cmp dword [eax + 0x14], 0x10
mov edx, dword [eax + 0x10]
jb 0x46dc65
mov eax, dword [eax]
push 0
push edx
push eax
push dword [ecx + 4]
call dword [sym.imp.WS2_32.dll_send]
mov edx, dword [ebp - 0x34]
cmp edx, 0x10
jb 0x46dca6
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46dc9c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e7d7
push edx
push ecx
call fcn.005b8996
add esp, 8
mov edi, dword [ebp - 0x1c]
lea ecx, [ebp - 0x30]
mov esi, dword [ebp - 0x30]
cmp edi, 0x10
mov edx, dword [ebp - 0x20]
push 2
cmovae ecx, esi
push 0x630220
call fcn.00408bb0
add esp, 8
test al, al
jne 0x46de41
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x70]
mov byte [ebp - 0x70], al
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x60], 0
push eax
mov dword [ebp - 0x5c], 0xf
mov dword [ebp - 0x18], 1
call fcn.00407930
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x70]
call fcn.00405d30
push 0x62f1a8
lea ecx, [ebp - 0x70]
call fcn.00403690
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0x70]
call fcn.00405d30
mov dword [ebp - 0x18], 3
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x48], xmm0
movq xmm0, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
movq qword [ebp - 0x38], xmm0
mov byte [eax], 0
mov byte [ebp - 4], 5
call fcn.0053d3c0
push 3
push dword [0x65edbc]
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x46ddd3
call fcn.0053d3c0
push 3
push dword [0x65edbc]
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx + 0x74]
call eax
mov edi, eax
lea eax, [ebp - 0x48]
mov edx, dword [edi + 0x1c]
lea esi, [edx + 0x20]
add esi, edi
mov ecx, esi
mov dword [ebp - 0x58], esi
sub ecx, edx
mov dword [ebp - 0x50], esi
add ecx, 0x8000
cmp dword [ebp - 0x34], 0x10
mov dword [ebp - 0x54], ecx
lea ecx, [ebp - 0x58]
cmovae eax, dword [ebp - 0x48]
push eax
call fcn.004597f0
mov eax, dword [ebp - 0x50]
sub eax, dword [ebp - 0x58]
add dword [edi + 0x1c], eax
call fcn.0053d3c0
push 0x626
push str.NSMainWnd::CWzMainWnd::CommandLineLog
push 0x631470
mov edx, dword [eax]
mov ecx, eax
push edi
call dword [edx + 0x20]
mov edx, dword [ebp - 0x34]
cmp edx, 0x10
jb 0x46de07
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46ddfd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e7dc
push edx
push ecx
call fcn.005b8996
add esp, 8
mov edx, dword [ebp - 0x5c]
cmp edx, 0x10
jb 0x46de3b
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46de31
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e7e1
push edx
push ecx
call fcn.005b8996
add esp, 8
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x1c]
cmp edi, 0x10
jb 0x46de6f
inc edi
mov eax, esi
cmp edi, 0x1000
jb 0x46de65
mov esi, dword [esi - 4]
add edi, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e7e6
push edi
push esi
call fcn.005b8996
add esp, 8
mov esi, dword [ebp - 0x15c]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
add dword [esi + 0x48], 0xffffffff
jne 0x46e746
mov ecx, esi
call fcn.00535af0
push 0x70
push esi
jmp 0x46e73e
cmp dword [ebp - 0x74], 0x10
lea ecx, [ebp - 0x88]
push 8
cmovae ecx, esi
mov edx, edi
push str.recharge
call fcn.00408bb0
add esp, 8
test al, al
je 0x46e132
mov edi, dword [ebp - 0x15c]
mov esi, dword [edi + 0x34]
mov dword [ebp - 0x15c], esi
mov dword [ebp - 0x4c], esi
inc dword [esi + 0x48]
sub esp, 0x18
mov byte [ebp - 4], 6
mov ecx, esp
push 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push 0x6292df
mov byte [ecx], 0
call fcn.00403030
inc dword [esi + 0x48]
push 0
push ecx
mov ecx, dword [ebp - 0x160]
mov eax, esp
mov dword [eax], esi
lea eax, [ebp - 0x30]
push eax
call fcn.0048d6b0
sub esp, 0x18
mov byte [ebp - 4], 7
lea eax, [ebp - 0x30]
mov ecx, esp
push eax
call fcn.00405df0
cmp dword [ebp - 0x1c], 0x10
lea ecx, [ebp - 0x30]
mov edx, dword [ebp - 0x20]
cmovae ecx, dword [ebp - 0x30]
push 2
push 0x630220
call fcn.00408bb0
movzx eax, al
add esp, 8
xor eax, 1
add eax, 0xc8
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.004a2a00
mov ecx, dword [edi]
cmp dword [eax + 0x14], 0x10
mov edx, dword [eax + 0x10]
jb 0x46df6b
mov eax, dword [eax]
push 0
push edx
push eax
push dword [ecx + 4]
call dword [sym.imp.WS2_32.dll_send]
mov edx, dword [ebp - 0x34]
cmp edx, 0x10
jb 0x46dfac
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46dfa2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e7eb
push edx
push ecx
call fcn.005b8996
add esp, 8
mov edi, dword [ebp - 0x1c]
lea ecx, [ebp - 0x30]
mov esi, dword [ebp - 0x30]
cmp edi, 0x10
mov edx, dword [ebp - 0x20]
push 2
cmovae ecx, esi
push 0x630220
call fcn.00408bb0
add esp, 8
test al, al
jne 0x46de41
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x48]
mov byte [ebp - 0x48], al
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x38], 0
push eax
mov dword [ebp - 0x34], 0xf
mov dword [ebp - 0x18], 4
call fcn.00407930
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x48]
call fcn.00405d30
push 0x62f1a8
lea ecx, [ebp - 0x48]
call fcn.00403690
lea eax, [ebp - 0xa0]
push eax
lea edx, [ebp - 0x48]
lea ecx, [ebp - 0x70]
call fcn.004085e0
add esp, 4
mov byte [ebp - 4], 9
call fcn.0053d3c0
push 3
push dword [0x65edbc]
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x46e0b5
call fcn.0053d3c0
push 3
push dword [0x65edbc]
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx + 0x74]
call eax
mov edi, eax
lea eax, [ebp - 0x70]
lea esi, [edi + 0x20]
add esi, dword [edi + 0x1c]
mov ecx, esi
mov dword [ebp - 0x58], esi
sub ecx, dword [edi + 0x1c]
add ecx, 0x8000
mov dword [ebp - 0x50], esi
cmp dword [ebp - 0x5c], 0x10
mov dword [ebp - 0x54], ecx
lea ecx, [ebp - 0x58]
cmovae eax, dword [ebp - 0x70]
push eax
call fcn.004597f0
mov eax, dword [ebp - 0x50]
sub eax, dword [ebp - 0x58]
add dword [edi + 0x1c], eax
call fcn.0053d3c0
push 0x626
push str.NSMainWnd::CWzMainWnd::CommandLineLog
push 0x631470
mov edx, dword [eax]
mov ecx, eax
push edi
call dword [edx + 0x20]
mov edx, dword [ebp - 0x5c]
cmp edx, 0x10
jb 0x46e0e9
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46e0df
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e7f0
push edx
push ecx
call fcn.005b8996
add esp, 8
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 0x10
jb 0x46de3b
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46de31
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e7f5
jmp 0x46de31
cmp dword [ebp - 0x74], 0x10
lea ecx, [ebp - 0x88]
push 0xb
cmovae ecx, esi
mov edx, edi
push str.allrecharge
call fcn.00408bb0
add esp, 8
test al, al
je 0x46e27d
push 2
push 0x630220
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
call fcn.00403030
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x48]
push 0
push 0x6292df
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
call fcn.00403030
mov eax, dword [ebp - 0x15c]
lea ecx, [ebp - 0x158]
add eax, 0x38
mov byte [ebp - 4], 0xb
push eax
call fcn.0046e830
sub esp, 0xb8
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x158]
mov dword [ebp - 0x4c], esp
mov ecx, esp
push eax
call fcn.0046e830
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, esp
push 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push 0x6292df
mov byte [ecx], 0
call fcn.00403030
mov ecx, dword [ebp - 0x160]
mov byte [ebp - 4], 0xc
call fcn.004939c0
lea ecx, [ebp - 0x158]
call fcn.00459a60
mov edx, dword [ebp - 0x34]
cmp edx, 0x10
jb 0x46e246
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46e23c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e7fa
push edx
push ecx
call fcn.005b8996
add esp, 8
mov edx, dword [ebp - 0x5c]
cmp edx, 0x10
jb 0x46e746
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46e73c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e7ff
jmp 0x46e73c
cmp dword [ebp - 0x74], 0x10
lea ecx, [ebp - 0x88]
push 8
cmovae ecx, esi
mov edx, edi
push str.clearpay
call fcn.00408bb0
add esp, 8
test al, al
je 0x46e3ce
mov edi, dword [ebp - 0x15c]
mov esi, dword [edi + 0x34]
mov dword [ebp - 0x18], esi
inc dword [esi + 0x48]
sub esp, 0x18
mov byte [ebp - 4], 0xe
mov ecx, esp
push 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push 0x6292df
mov byte [ecx], 0
call fcn.00403030
inc dword [esi + 0x48]
push ecx
mov eax, esp
mov dword [eax], esi
lea eax, [ebp - 0x30]
push eax
call fcn.004912b0
sub esp, 0x18
mov byte [ebp - 4], 0xf
lea eax, [ebp - 0x30]
mov ecx, esp
push eax
call fcn.00405df0
cmp dword [ebp - 0x1c], 0x10
lea ecx, [ebp - 0x30]
mov edx, dword [ebp - 0x20]
cmovae ecx, dword [ebp - 0x30]
push 2
push 0x630220
call fcn.00408bb0
movzx eax, al
add esp, 8
xor eax, 1
add eax, 0xc8
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.004a2a00
mov ecx, dword [edi]
cmp dword [eax + 0x14], 0x10
mov edx, dword [eax + 0x10]
jb 0x46e33a
mov eax, dword [eax]
push 0
push edx
push eax
push dword [ecx + 4]
call dword [sym.imp.WS2_32.dll_send]
mov edx, dword [ebp - 0x34]
cmp edx, 0x10
jb 0x46e37b
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46e371
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e804
push edx
push ecx
call fcn.005b8996
add esp, 8
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x46e3af
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46e3a5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e809
push edx
push ecx
call fcn.005b8996
add esp, 8
lea ecx, [ebp - 0x18]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
call fcn.004153d0
jmp 0x46e746
cmp dword [ebp - 0x74], 0x10
lea ecx, [ebp - 0x88]
push 6
cmovae ecx, esi
mov edx, edi
push str.bindwx
call fcn.00408bb0
add esp, 8
test al, al
je 0x46e746
push 0
push 0x6292df
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
call fcn.00403030
mov edi, dword [ebp - 0x15c]
mov edx, dword [edi + 0x34]
mov dword [ebp - 0x18], edx
push ecx
mov ecx, esp
mov byte [ebp - 4], 0x11
add dword [edx + 0x48], 2
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x30]
mov dword [ecx], edx
mov ecx, dword [ebp - 0x160]
push eax
call fcn.00496af0
sub esp, 0x18
mov byte [ebp - 4], 0x12
lea eax, [ebp - 0x30]
mov ecx, esp
push eax
call fcn.00405df0
cmp dword [ebp - 0x1c], 0x10
lea ecx, [ebp - 0x30]
mov edx, dword [ebp - 0x20]
cmovae ecx, dword [ebp - 0x30]
push 2
push 0x630220
call fcn.00408bb0
movzx eax, al
add esp, 8
xor eax, 1
add eax, 0xc8
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.004a2a00
mov ecx, dword [edi]
push eax
call fcn.00413920
mov edx, dword [ebp - 0x34]
cmp edx, 0x10
jb 0x46e4c1
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46e4b7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e80e
push edx
push ecx
call fcn.005b8996
add esp, 8
cmp dword [ebp - 0x1c], 0x10
lea ecx, [ebp - 0x30]
mov edx, dword [ebp - 0x20]
cmovae ecx, dword [ebp - 0x30]
push 2
push 0x630220
call fcn.00408bb0
add esp, 8
test al, al
je 0x46e5b2
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x48]
call fcn.00405df0
mov byte [ebp - 4], 0x13
call fcn.0053d3c0
push 3
push dword [0x65edb8]
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x46e57b
call fcn.0053d3c0
push 3
push dword [0x65edb8]
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx + 0x74]
call eax
mov edi, eax
lea eax, [ebp - 0x48]
lea esi, [edi + 0x20]
add esi, dword [edi + 0x1c]
mov ecx, esi
mov dword [ebp - 0x58], esi
sub ecx, dword [edi + 0x1c]
add ecx, 0x8000
mov dword [ebp - 0x50], esi
cmp dword [ebp - 0x34], 0x10
mov dword [ebp - 0x54], ecx
lea ecx, [ebp - 0x58]
cmovae eax, dword [ebp - 0x48]
push eax
call fcn.004597f0
mov eax, dword [ebp - 0x50]
sub eax, dword [ebp - 0x58]
add dword [edi + 0x1c], eax
call fcn.0053d3c0
push 0x623
push str.NSMainWnd::CWzMainWnd::CommandLineLog
push 0x631470
mov edx, dword [eax]
mov ecx, eax
push edi
call dword [edx + 0x20]
mov edx, dword [ebp - 0x34]
cmp edx, 0x10
jb 0x46e6e9
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46e6df
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e813
jmp 0x46e6df
push 0x62f1a8
lea edx, [ebp - 0x30]
lea ecx, [ebp - 0x178]
call fcn.004083c0
add esp, 4
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x14
push ecx
mov edx, eax
lea ecx, [ebp - 0x48]
call fcn.004085e0
add esp, 4
mov byte [ebp - 4], 0x15
call fcn.0053d3c0
push 3
push dword [0x65edb8]
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x46e669
call fcn.0053d3c0
push 3
push dword [0x65edb8]
mov ecx, eax
mov edx, dword [eax]
mov eax, dword [edx + 0x74]
call eax
mov edi, eax
lea eax, [ebp - 0x48]
lea esi, [edi + 0x20]
add esi, dword [edi + 0x1c]
mov ecx, esi
mov dword [ebp - 0x58], esi
sub ecx, dword [edi + 0x1c]
add ecx, 0x8000
mov dword [ebp - 0x50], esi
cmp dword [ebp - 0x34], 0x10
mov dword [ebp - 0x54], ecx
lea ecx, [ebp - 0x58]
cmovae eax, dword [ebp - 0x48]
push eax
call fcn.004597f0
mov eax, dword [ebp - 0x50]
sub eax, dword [ebp - 0x58]
add dword [edi + 0x1c], eax
call fcn.0053d3c0
push 0x623
push str.NSMainWnd::CWzMainWnd::CommandLineLog
push 0x631470
mov edx, dword [eax]
mov ecx, eax
push edi
call dword [edx + 0x20]
mov edx, dword [ebp - 0x34]
cmp edx, 0x10
jb 0x46e69d
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46e693
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e818
push edx
push ecx
call fcn.005b8996
add esp, 8
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
cmp edx, 0x10
jb 0x46e6e9
mov ecx, dword [ebp - 0x178]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46e6df
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e81d
push edx
push ecx
call fcn.005b8996
add esp, 8
mov edx, dword [ebp - 0x1c]
cmp edx, 0x10
jb 0x46e71d
mov ecx, dword [ebp - 0x30]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46e713
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e822
push edx
push ecx
call fcn.005b8996
add esp, 8
lea ecx, [ebp - 0x18]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
call fcn.004153d0
jmp 0x46e246
push edx
push ecx
call fcn.005b8996
add esp, 8
mov edx, dword [ebp - 0x8c]
cmp edx, 0x10
jb 0x46e780
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x46e776
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e7ff
push edx
push ecx
call fcn.005b8996
add esp, 8
mov eax, dword [ebp - 0x74]
cmp eax, 0x10
jb 0x46e7b5
mov edx, dword [ebp - 0x88]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x46e7ab
mov edx, dword [edx - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46e7ff
push ecx
push edx
call fcn.005b8996
add esp, 8
xor al, al
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.005b8427
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
call fcn.005d36fe
call fcn.005d36fe
call fcn.005d36fe
call fcn.005d36fe
call fcn.005d36fe
call fcn.005d36fe
call fcn.005d36fe
call fcn.005d36fe
call fcn.005d36fe
call fcn.005d36fe
call fcn.005d36fe
call fcn.005d36fe
call fcn.005d36fe
call fcn.005d36fe
call fcn.005d36fe
call fcn.005d36fe
int3