Function at 0x4a1930
Capabilities:
Check for time delay via gettickcount
Create raw socket
Encode data using base64
Parse pe header
Receive data
Receive data on socket
Resolve function by parsing pe exports
Send data
Send data on socket

Disassembly:
push 0xffffffffffffffff
push 0x5447b8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x68
mov eax, dword [0x591288]
push ebx
push ebp
push esi
push edi
mov ebp, ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x80], 0
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x1c], eax
mov esi, dword [ebp + 8]
mov dword [esp + 0x60], eax
mov dword [esp + 0x38], esi
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x20], eax
mov ecx, esi
mov byte [esp + 0x80], 5
call fcn.00434250
mov eax, dword [ebp + 0x21ac]
mov edi, dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x4a1e5f
cmp word [eax + 0x18], 9
jne 0x4a1cc0
mov ecx, dword [ebp + 0x18]
lea eax, [esp + 0x34]
push eax
call fcn.0041f2a0
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x84], 6
call fcn.0050d536
lea ecx, [esp + 0x34]
mov byte [esp + 0x80], 5
call fcn.0050d3fd
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx - 8]
test eax, eax
jne 0x4a1cc0
mov ecx, dword [ebp + 0x18]
lea edx, [esp + 0x28]
push edx
call fcn.004211a0
mov ecx, dword [ebp + 0x18]
mov byte [esp + 0x80], 7
call fcn.0041f8d0
push eax
lea eax, [esp + 0x1c]
push 0x5881c0
push eax
call fcn.005060bb
add esp, 0xc
lea ecx, [esp + 0x34]
push ecx
mov ecx, dword [ebp + 0x18]
call fcn.0041f280
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x84], 8
call fcn.0050d536
lea ecx, [esp + 0x34]
mov byte [esp + 0x80], 7
call fcn.0050d3fd
mov ecx, dword [ebp + 0x18]
lea edx, [esp + 0x34]
push edx
call fcn.0041f2a0
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x84], 9
call fcn.0050d536
lea ecx, [esp + 0x34]
mov byte [esp + 0x80], 7
call fcn.0050d3fd
lea eax, [esp + 0x18]
lea ecx, [esp + 0x14]
push eax
lea edx, [esp + 0x38]
push ecx
push edx
call fcn.0050d62c
mov eax, dword [eax]
mov byte [esp + 0x80], 0xa
push eax
lea eax, [esp + 0x20]
push 0xef1d
push eax
call fcn.0043ca50
add esp, 0xc
lea ecx, [esp + 0x34]
mov byte [esp + 0x80], 7
call fcn.0050d3fd
mov ecx, dword [ebp + 8]
call fcn.00434260
push 1
push ecx
lea edx, [esp + 0x24]
mov ecx, esp
mov dword [esp + 0x3c], esp
push edx
call fcn.0050d172
mov ecx, dword [ebp + 0x10]
call fcn.0047db40
push ecx
lea eax, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x34], esp
push eax
call fcn.0050d172
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x34], esp
mov byte [esp + 0x88], 0xb
push edx
call fcn.0050d172
lea eax, [esp + 0x3c]
mov byte [esp + 0x88], 7
push eax
call fcn.004827a0
add esp, 0xc
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x84], 0xc
call fcn.0050d536
lea ecx, [esp + 0x34]
mov byte [esp + 0x80], 7
call fcn.0050d3fd
mov ecx, dword [ebp + 0xc]
push ecx
call edi
test eax, eax
je 0x4a1d53
mov edx, dword [ebp + 0x1c]
cmp dword [edx], 0
je 0x4a1d53
mov eax, dword [esp + 0x10]
mov ecx, dword [eax - 8]
test ecx, ecx
jne 0x4a1c81
mov ecx, dword [ebp + 0x10]
push 2
push 0xef1c
call fcn.0047dac0
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp + 0x3c]
mov dword [esp + 0x44], ecx
lea eax, [esp + 0x3c]
lea ecx, [esp + 0x4c]
mov dword [esp + 0x40], edx
mov edx, dword [ebp + 0xc]
push eax
push ecx
push 0x471
push edx
mov dword [esp + 0x4c], 1
mov dword [esp + 0x5c], 2
call dword [sym.imp.USER32.dll_SendMessageA]
lea ecx, [esp + 0x28]
mov byte [esp + 0x80], 5
call fcn.0050d3fd
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x12
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x11
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x10
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 1
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
mov ecx, esi
call fcn.00434250
push ecx
lea eax, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x38], esp
push eax
call fcn.0050d172
mov ecx, dword [ebp + 0x18]
call fcn.0041f340
mov ecx, esi
call fcn.00434260
mov ecx, esi
call fcn.00434250
lea ecx, [esp + 0x28]
mov byte [esp + 0x80], 5
call fcn.0050d3fd
mov ecx, dword [ebp + 0x21ac]
lea eax, [esp + 0x18]
mov edx, dword [ecx + 0x14]
push edx
push 0x5881c0
push eax
call fcn.005060bb
mov ecx, dword [ebp + 0x21ac]
add esp, 0xc
add ecx, 4
push ecx
lea ecx, [esp + 0x18]
call fcn.0050d536
mov edx, dword [ebp + 0x21ac]
lea ecx, [esp + 0x10]
add edx, 0x10
push edx
call fcn.0050d536
mov eax, dword [esp + 0x10]
mov ecx, dword [eax - 8]
test ecx, ecx
jne 0x4a1e18
lea ecx, [esp + 0x18]
lea edx, [esp + 0x14]
push ecx
lea eax, [esp + 0x38]
push edx
push eax
call fcn.0050d62c
mov eax, dword [eax]
lea ecx, [esp + 0x1c]
push eax
push 0xef37
push ecx
mov byte [esp + 0x8c], 0x13
call fcn.0043ca50
add esp, 0xc
mov byte [esp + 0x80], 5
lea ecx, [esp + 0x34]
jmp 0x4a1f66
lea ecx, [esp + 0x28]
mov byte [esp + 0x80], 5
call fcn.0050d3fd
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0xf
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0xe
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0xd
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 1
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
lea edx, [esp + 0x18]
lea eax, [esp + 0x10]
push edx
lea ecx, [esp + 0x38]
push eax
push ecx
call fcn.0050d62c
mov eax, dword [eax]
mov edx, dword [esp + 0x14]
push eax
push edx
lea eax, [esp + 0x24]
push 0xef3a
push eax
mov byte [esp + 0x90], 0x14
call fcn.0043cac0
add esp, 0x10
mov byte [esp + 0x80], 5
lea ecx, [esp + 0x34]
jmp 0x4a1f66
mov ecx, dword [ebp + 0x18]
call fcn.0041f8d0
push eax
lea ecx, [esp + 0x1c]
push 0x5881c0
push ecx
call fcn.005060bb
mov ecx, dword [ebp + 0x18]
add esp, 0xc
lea edx, [esp + 0x34]
push edx
call fcn.0041f280
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x84], 0x15
call fcn.0050d536
lea ecx, [esp + 0x34]
mov byte [esp + 0x80], 5
call fcn.0050d3fd
mov ecx, dword [ebp + 0x18]
lea eax, [esp + 0x34]
push eax
call fcn.0041f2a0
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x84], 0x16
call fcn.0050d536
lea ecx, [esp + 0x34]
mov byte [esp + 0x80], 5
call fcn.0050d3fd
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx - 8]
test eax, eax
jne 0x4a1f24
lea edx, [esp + 0x18]
lea eax, [esp + 0x14]
push edx
lea ecx, [esp + 0x38]
push eax
push ecx
call fcn.0050d62c
mov eax, dword [eax]
lea edx, [esp + 0x1c]
push eax
push 0xef1d
push edx
mov byte [esp + 0x8c], 0x17
call fcn.0043ca50
add esp, 0xc
mov byte [esp + 0x80], 5
lea ecx, [esp + 0x34]
jmp 0x4a1f66
lea eax, [esp + 0x18]
lea ecx, [esp + 0x10]
push eax
lea edx, [esp + 0x38]
push ecx
push edx
call fcn.0050d62c
mov eax, dword [eax]
lea ecx, [esp + 0x1c]
push eax
mov eax, dword [esp + 0x18]
push eax
push 0xef1a
push ecx
mov byte [esp + 0x90], 0x18
call fcn.0043cac0
add esp, 0x10
mov byte [esp + 0x80], 5
lea ecx, [esp + 0x34]
call fcn.0050d3fd
mov ecx, esi
call fcn.00434260
mov edx, dword [esp + 0x10]
mov eax, dword [edx - 8]
test eax, eax
jne 0x4a21cc
mov eax, dword [0x591288]
mov dword [esp + 0x28], eax
mov eax, dword [ebp + 0x21ac]
mov bl, 0x19
test eax, eax
mov byte [esp + 0x80], bl
jne 0x4a1fcc
lea ecx, [esp + 0x34]
push ecx
mov ecx, dword [ebp + 0x18]
call fcn.004211a0
push eax
lea ecx, [esp + 0x2c]
mov byte [esp + 0x84], 0x1a
call fcn.0050d536
lea ecx, [esp + 0x34]
mov byte [esp + 0x80], bl
call fcn.0050d3fd
push 1
push ecx
lea edx, [esp + 0x24]
mov ecx, esp
mov dword [esp + 0x3c], esp
push edx
call fcn.0050d172
mov ecx, dword [ebp + 0x10]
call fcn.0047db40
push ecx
lea eax, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x34], esp
push eax
call fcn.0050d172
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x34], esp
push edx
mov byte [esp + 0x8c], 0x1b
call fcn.0050d172
lea eax, [esp + 0x3c]
mov byte [esp + 0x88], bl
push eax
call fcn.004827a0
add esp, 0xc
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x84], 0x1c
call fcn.0050d536
lea ecx, [esp + 0x34]
mov byte [esp + 0x80], bl
call fcn.0050d3fd
mov ecx, dword [ebp + 0xc]
push ecx
call edi
test eax, eax
je 0x4a2252
mov edx, dword [ebp + 0x1c]
cmp dword [edx], 0
je 0x4a2252
mov eax, dword [esp + 0x10]
mov ecx, dword [eax - 8]
test ecx, ecx
jne 0x4a217b
mov ecx, dword [ebp + 0x10]
push 2
push 0xef1c
call fcn.0047dac0
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp + 0x3c]
mov dword [esp + 0x44], ecx
lea eax, [esp + 0x3c]
lea ecx, [esp + 0x4c]
mov dword [esp + 0x40], edx
mov edx, dword [ebp + 0xc]
push eax
push ecx
push 0x471
push edx
mov dword [esp + 0x4c], 1
mov dword [esp + 0x5c], 2
call dword [sym.imp.USER32.dll_SendMessageA]
lea ecx, [esp + 0x28]
mov byte [esp + 0x80], 5
call fcn.0050d3fd
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x22
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x21
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x20
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 1
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
mov ecx, esi
call fcn.00434250
mov eax, dword [ebp + 0x21ac]
test eax, eax
je 0x4a219b
lea ecx, [esp + 0x10]
push ecx
lea ecx, [eax + 0x10]
call fcn.0050d536
jmp 0x4a21b4
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x38], esp
push edx
call fcn.0050d172
mov ecx, dword [ebp + 0x18]
call fcn.0041f340
mov ecx, esi
call fcn.00434260
lea ecx, [esp + 0x28]
mov byte [esp + 0x80], 5
call fcn.0050d3fd
mov eax, dword [ebp + 0x21ac]
test eax, eax
je 0x4a2317
mov edi, dword [eax + 0x14]
add eax, 0x10
push eax
lea ecx, [esp + 0x18]
mov dword [esp + 0x34], edi
call fcn.0050d536
push edi
lea eax, [esp + 0x1c]
push 0x5881c0
push eax
call fcn.005060bb
mov edx, dword [ebp + 0x21ac]
add esp, 0xc
lea ecx, [esp + 0x18]
add edx, 0x10
push ecx
lea eax, [esp + 0x38]
push edx
push eax
call fcn.0050d62c
mov ecx, dword [ebp + 0x21ac]
mov eax, dword [eax]
push eax
lea edx, [esp + 0x20]
mov ecx, dword [ecx + 4]
mov byte [esp + 0x84], 0x23
push ecx
push 0xef3a
push edx
call fcn.0043cac0
add esp, 0x10
mov byte [esp + 0x80], 5
lea ecx, [esp + 0x34]
jmp 0x4a23ce
lea ecx, [esp + 0x28]
mov byte [esp + 0x80], 5
call fcn.0050d3fd
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x1f
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x1e
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x1d
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 1
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
mov ecx, dword [ebp + 0x18]
call fcn.0041f8d0
mov ecx, dword [ebp + 0x18]
mov edi, eax
lea eax, [esp + 0x34]
mov dword [esp + 0x30], edi
push eax
call fcn.0041f2a0
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x84], 0x24
call fcn.0050d536
lea ecx, [esp + 0x34]
mov byte [esp + 0x80], 5
call fcn.0050d3fd
push edi
lea ecx, [esp + 0x1c]
push 0x5881c0
push ecx
call fcn.005060bb
add esp, 0xc
lea edx, [esp + 0x18]
lea eax, [esp + 0x14]
lea ecx, [esp + 0x2c]
push edx
push eax
push ecx
call fcn.0050d62c
mov ecx, dword [ebp + 0x18]
mov edi, dword [eax]
lea edx, [esp + 0x34]
mov bl, 0x25
push edx
mov byte [esp + 0x84], bl
call fcn.0041f280
mov eax, dword [eax]
push edi
push eax
lea eax, [esp + 0x24]
push 0xef1a
push eax
mov byte [esp + 0x90], 0x26
call fcn.0043cac0
add esp, 0x10
lea ecx, [esp + 0x34]
mov byte [esp + 0x80], bl
call fcn.0050d3fd
mov byte [esp + 0x80], 5
lea ecx, [esp + 0x2c]
call fcn.0050d3fd
or edi, 0xffffffff
xor ebx, ebx
lea ecx, [esp + 0x68]
mov dword [esp + 0x54], edi
mov dword [esp + 0x58], edi
mov dword [esp + 0x5c], edi
mov word [esp + 0x50], bx
call fcn.0050d388
mov dword [esp + 0x24], ebx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push 0x2b
mov ecx, esi
mov dword [ebp + 0x20], eax
call fcn.0042f3e0
lea eax, [eax + eax*4]
push 0x2a
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
shl ecx, 3
mov dword [ebp + 0x24], ecx
mov ecx, esi
call fcn.0042f3e0
lea eax, [eax + eax*4]
push 1
push ecx
mov dword [esp + 0x30], 1
lea eax, [eax + eax*4]
mov ecx, esp
mov dword [esp + 0x3c], esp
lea edx, [eax + eax*4]
lea eax, [esp + 0x24]
shl edx, 3
push eax
mov dword [ebp + 0x28], edx
call fcn.0050d172
mov ecx, dword [ebp + 0x10]
call fcn.0047db40
push ebx
push 1
push 2
call dword [sym.imp.WSOCK32.dll_socket]
cmp eax, ebx
mov dword [ebp + 0x30], eax
jne 0x4a24fb
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x29
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x28
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x27
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], bl
call fcn.0050d3fd
mov dword [esp + 0x80], edi
jmp 0x4a367a
mov esi, dword [esp + 0x14]
lea ebx, [ebp + 0x78]
mov ecx, 0x400
xor eax, eax
mov edi, ebx
rep stosd dword es:[edi], eax
mov ecx, dword [esi - 8]
mov edi, ebx
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x1c]
cmp dword [eax], 0
jne 0x4a25e0
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x2c
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x2b
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x2a
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 1
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
mov esi, dword [esp + 0x38]
mov ecx, esi
call fcn.00434250
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp + 0x30]
xor edi, edi
push 0x10
mov dword [ecx + 0xc], edx
mov eax, dword [ebp + 0x3c]
push 0x472
mov dword [eax + 0x2c], edi
mov ecx, dword [ebp + 0x3c]
mov dword [ecx + 0x30], edi
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 0x30]
push edx
push eax
call dword [sym.imp.WSOCK32.dll_WSAAsyncSelect]
mov ecx, dword [esp + 0x30]
mov edx, dword [ebp + 0x30]
push ecx
push ebx
push edx
call fcn.004822f0
add esp, 0xc
cmp eax, 0xffffffff
jne 0x4a2704
call dword [sym.imp.WSOCK32.dll_WSAGetLastError]
cmp eax, 0x2733
je 0x4a2704
mov eax, dword [ebp + 0x10]
mov ecx, esi
mov dword [eax + 0xc], edi
call fcn.00434260
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x2f
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x2e
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x2d
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 3
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
mov ecx, esi
call fcn.00434260
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, dword [esp + 0x28]
mov dword [ebp + 0x20], eax
mov ecx, dword [ebp + 0x1c]
cmp dword [ecx], 0
je 0x4a2778
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, esi
call fcn.00434250
mov eax, dword [ebp + 0x3c]
mov ecx, dword [ebp + 0x30]
mov edx, dword [eax + 0x2c]
cmp edx, ecx
jne 0x4a2751
cmp word [eax + 0x30], 0x10
jne 0x4a2751
mov eax, dword [eax + 0x30]
xor edi, edi
shr eax, 0x10
jne 0x4a284f
mov ecx, esi
call fcn.00434260
test edi, edi
je 0x4a29e1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x28]
sub eax, edx
cmp eax, ecx
ja 0x4a2914
jmp 0x4a2718
mov ecx, dword [ebp + 0xc]
push ecx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x4a279b
mov edx, dword [ebp + 0x10]
mov dword [esp + 0x80], 5
mov dword [edx + 0xc], 0
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x34
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x33
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x32
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 1
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
mov eax, dword [ebp + 0x10]
mov ecx, esi
mov dword [eax + 0xc], 0
call fcn.00434260
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x37
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x36
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x35
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 3
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
mov ecx, dword [ebp + 0x10]
push 2
push 0xef22
mov dword [ecx + 0xc], 0
mov ecx, dword [ebp + 0x10]
call fcn.0047dac0
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x3a
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x39
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x38
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 3
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
mov edx, dword [ebp + 0x1c]
xor edi, edi
cmp dword [edx], edi
jne 0x4a2aa2
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x3d
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x3c
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x3b
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 1
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
mov eax, dword [ebp + 0x10]
push edi
push 0xef1b
mov dword [eax + 0xc], edi
mov ecx, dword [ebp + 0x10]
call fcn.0047dac0
mov ecx, dword [ebp + 0x1c]
cmp dword [ecx], edi
jne 0x4a2b75
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x40
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x3f
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x3e
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 1
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebp + 0x21ac]
mov dword [ebp + 0x20], eax
cmp ecx, edi
je 0x4a369b
mov ax, word [ecx + 0x18]
cmp ax, 7
je 0x4a2c23
cmp ax, 9
je 0x4a2baa
cmp ax, 8
jne 0x4a369b
cmp ax, 7
je 0x4a2c23
cmp ax, 9
je 0x4a2c1d
push ecx
mov ecx, dword [ebp + 0x18]
call fcn.0041f8d0
push eax
push ecx
mov ecx, dword [ebp + 0x18]
mov edx, esp
mov dword [esp + 0x40], esp
push edx
call fcn.0041f280
mov eax, dword [ebp + 0x10]
lea ecx, [esp + 0x44]
push eax
push ecx
call fcn.00480420
add esp, 0x14
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x84], 0x41
call fcn.0050d536
lea ecx, [esp + 0x38]
mov byte [esp + 0x80], 5
call fcn.0050d3fd
mov eax, dword [esp + 0x20]
mov edx, dword [ebp + 0x30]
push edi
mov ecx, dword [eax - 8]
push ecx
push eax
push edx
call dword [sym.imp.WSOCK32.dll_send]
jmp 0x4a2cb9
cmp ax, 7
jne 0x4a2c4f
mov ecx, dword [ebp + 0x18]
push edi
call fcn.0041f8d0
push eax
push ecx
mov ecx, dword [ebp + 0x18]
mov eax, esp
mov dword [esp + 0x44], esp
push eax
call fcn.0041f280
mov ecx, dword [ebp + 0x21ac]
push ecx
push ebx
call fcn.004825c0
add esp, 0x14
jmp 0x4a2c78
mov ecx, dword [ebp + 0x18]
call fcn.0041f8d0
push eax
push ecx
mov ecx, dword [ebp + 0x18]
mov edx, esp
mov dword [esp + 0x40], esp
push edx
call fcn.0041f2a0
mov eax, dword [ebp + 0x21ac]
push eax
push ebx
call fcn.00482380
add esp, 0x10
mov ecx, dword [ebp + 0x30]
push edi
push eax
push ebx
push ecx
call dword [sym.imp.WSOCK32.dll_send]
movsx edx, byte [ebp + 0x79]
movsx eax, byte [ebx]
push edx
lea esi, [ebp + 0x140]
push eax
push str.Socks:__02x__02x
push esi
call fcn.004ed976
add esp, 0x10
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x40], esp
push esi
call fcn.0050d46b
mov ecx, dword [ebp + 0x10]
call fcn.0047db40
mov dword [esp + 0x34], 5
mov dword [esp + 0x28], 1
mov dword [esp + 0x24], edi
mov dword [esp + 0x30], edi
push 0x14
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esp + 0x24]
mov ecx, 0x1000
sub ecx, eax
push 0
lea edx, [ebx + eax]
mov eax, dword [ebp + 0x30]
push ecx
push edx
push eax
call dword [sym.imp.WSOCK32.dll_recv]
mov edi, eax
test edi, edi
jg 0x4a2d4a
mov ecx, dword [ebp + 0x21ac]
cmp word [ecx + 0x18], 8
jne 0x4a2d10
mov eax, dword [esp + 0x24]
test eax, eax
jne 0x4a2d4a
cmp edi, 0xffffffff
jne 0x4a2fd5
call dword [sym.imp.WSOCK32.dll_WSAGetLastError]
cmp eax, 0x2733
jne 0x4a3002
mov edi, 1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x28]
sub eax, edx
cmp eax, ecx
ja 0x4a30b6
jmp 0x4a2fd5
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, dword [ebp + 0x21ac]
mov dword [ebp + 0x20], eax
mov ax, word [edx + 0x18]
cmp ax, 7
jne 0x4a2ed2
movsx eax, byte [ebp + 0x79]
movsx ecx, byte [ebx]
push eax
lea esi, [ebp + 0x140]
push ecx
push str.Socks:__02x__02x
push esi
call fcn.004ed976
add esp, 0x10
push 3
push ecx
mov ecx, esp
mov dword [esp + 0x40], esp
push esi
call fcn.0050d46b
mov ecx, dword [ebp + 0x10]
call fcn.0047db40
mov eax, dword [esp + 0x34]
cmp eax, 5
mov al, byte [ebx]
jne 0x4a2eb2
cmp al, 5
jne 0x4a2db5
mov cl, byte [ebp + 0x79]
test cl, cl
je 0x4a2dc0
cmp al, 1
jne 0x4a2e34
mov cl, byte [ebp + 0x79]
test cl, cl
jne 0x4a2e34
mov ecx, dword [ebp + 0x18]
push 2
mov dword [esp + 0x38], 6
call fcn.0041f8d0
push eax
push ecx
mov ecx, dword [ebp + 0x18]
mov edx, esp
mov dword [esp + 0x44], esp
push edx
call fcn.0041f280
mov eax, dword [ebp + 0x21ac]
push eax
push ebx
call fcn.004825c0
mov ecx, dword [ebp + 0x30]
add esp, 0x14
push 0
push eax
push ebx
push ecx
call dword [sym.imp.WSOCK32.dll_send]
movsx edx, byte [ebp + 0x79]
movsx eax, byte [ebx]
push edx
push eax
push str.Socks:__02x__02x
push esi
call fcn.004ed976
add esp, 0x10
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x40], esp
push esi
call fcn.0050d46b
mov ecx, dword [ebp + 0x10]
call fcn.0047db40
jmp 0x4a2fd5
cmp al, 5
jne 0x4a3179
cmp byte [ebp + 0x79], 2
jne 0x4a3179
mov ecx, dword [ebp + 0x18]
push 1
call fcn.0041f8d0
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x44], esp
push ecx
mov ecx, dword [ebp + 0x18]
call fcn.0041f280
mov edx, dword [ebp + 0x21ac]
push edx
push ebx
call fcn.004825c0
add esp, 0x14
push 0
push eax
mov eax, dword [ebp + 0x30]
push ebx
push eax
call dword [sym.imp.WSOCK32.dll_send]
movsx ecx, byte [ebp + 0x79]
movsx edx, byte [ebx]
push ecx
push edx
push str.Socks:__02x__02x
push esi
call fcn.004ed976
add esp, 0x10
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x40], esp
push esi
call fcn.0050d46b
mov ecx, dword [ebp + 0x10]
call fcn.0047db40
jmp 0x4a2fd5
cmp al, 5
jne 0x4a322d
mov al, byte [ebp + 0x79]
test al, al
jne 0x4a322d
mov dword [esp + 0x28], 0
jmp 0x4a2fd5
cmp ax, 9
jne 0x4a2f2c
movsx eax, byte [ebp + 0x79]
movsx ecx, byte [ebx]
push eax
lea esi, [ebp + 0x140]
push ecx
push str.Socks:__02x__02x
push esi
call fcn.004ed976
add esp, 0x10
push 3
push ecx
mov ecx, esp
mov dword [esp + 0x40], esp
push esi
call fcn.0050d46b
mov ecx, dword [ebp + 0x10]
call fcn.0047db40
cmp byte [ebx], 0
jne 0x4a32e1
cmp byte [ebp + 0x79], 0x5a
jne 0x4a32e1
mov dword [esp + 0x28], 0
jmp 0x4a2fd5
mov edx, dword [0x591288]
mov dword [esp + 0x2c], edx
test edi, edi
mov byte [esp + 0x80], 0x4b
jle 0x4a2f46
add dword [esp + 0x24], edi
lea eax, [esp + 0x2c]
lea ecx, [esp + 0x24]
push eax
lea esi, [ebp + 0x219c]
push ecx
push ebx
push esi
call fcn.00481530
add esp, 0x10
test eax, eax
je 0x4a2fc4
mov edx, dword [ebp + 0x1c]
cmp dword [edx], 0
je 0x4a3395
mov eax, dword [esp + 0x2c]
push 0x596660
push eax
call fcn.004ee0f0
add esp, 8
test eax, eax
je 0x4a2fac
mov esi, dword [esp + 0x30]
push 3
push ecx
lea edx, [esp + 0x34]
inc esi
mov ecx, esp
mov dword [esp + 0x40], esp
push edx
mov dword [esp + 0x3c], esi
call fcn.0050d172
mov ecx, dword [ebp + 0x10]
call fcn.0047db40
jmp 0x4a2fc4
cmp dword [esp + 0x30], 2
jg 0x4a345a
mov word [esi], 0
mov dword [esp + 0x28], 0
lea ecx, [esp + 0x2c]
mov byte [esp + 0x80], 5
call fcn.0050d3fd
push 0x14
call dword [sym.imp.KERNEL32.dll_Sleep]
test edi, edi
je 0x4a351f
mov eax, dword [ebp + 0x1c]
cmp dword [eax], 0
je 0x4a351f
mov eax, dword [esp + 0x28]
test eax, eax
je 0x4a351f
jmp 0x4a2cd1
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x54
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x53
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x52
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 3
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
mov ecx, dword [ebp + 0x10]
push 2
push 0xef22
call fcn.0047dac0
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x57
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x56
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x55
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 3
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x44
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x43
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x42
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 3
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x47
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x46
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x45
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 3
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x4a
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x49
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x48
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 3
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
lea ecx, [esp + 0x2c]
mov byte [esp + 0x80], 5
call fcn.0050d3fd
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x4e
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x4d
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x4c
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 1
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
lea ecx, [esp + 0x2c]
mov byte [esp + 0x80], 5
call fcn.0050d3fd
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x51
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x50
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x4f
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 3
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
mov ecx, dword [ebp + 0x1c]
cmp dword [ecx], 0
jne 0x4a35df
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x5a
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x59
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x58
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov eax, 1
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
test edi, edi
jne 0x4a369b
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x5d
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x5c
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x5b
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
mov dword [esp + 0x80], 0xffffffff
lea ecx, [esp + 0x10]
call fcn.0050d3fd
mov eax, 3
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
lea ecx, [esp + 0x20]
mov byte [esp + 0x80], 4
call fcn.0050d3fd
lea ecx, [esp + 0x6c]
mov byte [esp + 0x80], 0x60
call fcn.0050d3fd
lea ecx, [esp + 0x68]
mov byte [esp + 0x80], 0x5f
call fcn.0050d3fd
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 0x5e
call fcn.0050d3fd
lea ecx, [esp + 0x60]
mov byte [esp + 0x80], 3
call fcn.0050d3fd
lea ecx, [esp + 0x1c]
mov byte [esp + 0x80], 2
call fcn.0050d3fd
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 1
call fcn.0050d3fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0050d3fd
lea ecx, [esp + 0x10]
mov dword [esp + 0x80], 0xffffffff
call fcn.0050d3fd
mov ecx, dword [esp + 0x78]
pop edi
pop esi
pop ebp
xor eax, eax
mov dword fs:[0], ecx
pop ebx
add esp, 0x74
ret