Function at 0x673486ec
Capabilities:
Access peb ldr_data
Contain obfuscated stackstrings
Get process heap flags
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x46c
mov dword [ebp - 0x43c], eax
mov dword [ebp - 0x448], edx
mov dword [ebp - 0x444], ecx
mov byte [ecx], 0
mov edi, dword [eax + 0x3a0]
test edi, edi
je 0x67349480
mov dword [esp + 4], 0x360
mov dword [esp], 1
call dword [0x67391014]
mov ebx, eax
test eax, eax
je 0x67348d2c
mov dword [eax + str._no_protocol_], str._q9g
mov dword [eax + 0xc8], 0xffffffff
mov dword [eax + 0xcc], 0xffffffff
mov dword [eax + 0x2c], 0xffffffff
mov dword [eax + 0x94], 0xffffffff
mov byte [eax + 0x12c], 1
call fcn.673533ec
mov dword [ebx + 0xc0], eax
mov dword [ebx + 0xc4], edx
mov eax, dword [ebp - 0x448]
mov dword [eax], ebx
mov edx, dword [ebp - 0x43c]
mov dword [ebx], edx
mov ecx, edx
mov edx, dword [edx + 0x264]
mov dword [ebx + 0xac], edx
mov eax, dword [ecx + 0x320]
test eax, eax
je 0x67348b50
cmp byte [eax], 0
je 0x67348b50
mov byte [ebx + 0x12e], 1
cmp edx, 1
jbe 0x67348d54
xor eax, eax
mov byte [ebx + 0x12f], al
mov eax, dword [ebp - 0x43c]
mov esi, dword [eax + 0x358]
test esi, esi
setne byte [ebx + 0x131]
mov edx, eax
mov al, byte [eax + 0x29a]
mov byte [ebx + 0x138], al
mov ecx, dword [edx + 0x350]
test ecx, ecx
setne byte [ebx + 0x130]
mov al, byte [edx + 0x2b4]
mov byte [ebx + 0x13c], al
mov al, byte [edx + 0x2b5]
mov byte [ebx + 0x13d], al
mov eax, dword [edx + 0x230]
mov dword [ebx + 0x358], eax
mov eax, dword [edx + 0x234]
mov dword [ebx + 0x35c], eax
mov eax, dword [edx + 8]
test eax, eax
je 0x67348847
mov dword [esp], eax
call fcn.67354228
test al, al
jne 0x67349448
mov dword [esp], 0x6734786c
call fcn.673697b8
mov dword [ebx + 0x17c], eax
mov dword [esp], 0x6734786c
call fcn.673697b8
mov dword [ebx + 0x180], eax
mov dword [esp], 0x6734786c
call fcn.673697b8
mov dword [ebx + 0x184], eax
mov dword [esp], 0x6734786c
call fcn.673697b8
mov dword [ebx + 0x188], eax
mov edi, dword [ebx + 0x17c]
test edi, edi
je 0x67348d0c
mov esi, dword [ebx + 0x180]
test esi, esi
je 0x67348d0c
mov ecx, dword [ebx + 0x184]
test ecx, ecx
je 0x67348d0c
test eax, eax
je 0x67348d0c
mov ecx, dword [ebp - 0x43c]
mov edi, dword [ecx + 0x3a0]
xor eax, eax
mov ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
lea eax, [ecx - 1]
cmp eax, 0xff
jbe 0x67348d20
lea esi, [ecx + 1]
mov edi, dword [ebp - 0x43c]
mov eax, dword [edi + 0x85b4]
test eax, eax
je 0x67348902
mov dword [esp], eax
call dword [0x67391008]
mov dword [esp], esi
call dword [str.hn8gXn8g]
mov edx, dword [ebp - 0x43c]
mov dword [edx + 0x85b4], eax
test eax, eax
je 0x67348d0c
mov dword [edx + 0x85b8], eax
mov dword [esp], esi
call dword [str.hn8gXn8g]
mov dword [ebx + 0x74], eax
test eax, eax
je 0x67348d0c
mov dword [ebx + 0x7c], eax
mov byte [eax], 0
mov ecx, dword [ebp - 0x43c]
mov ecx, dword [ecx + 0x85b8]
mov dword [ebp - 0x440], ecx
mov dword [esp + 0xc], ecx
lea edi, [ebp - 0x42c]
mov dword [esp + 8], edi
mov dword [esp + 4], str._15_:_:___n_
mov edx, dword [ebp - 0x43c]
mov eax, dword [edx + 0x3a0]
mov dword [esp], eax
call sub.msvcrt.dll_sscanf
cmp eax, 2
je 0x673494b0
mov eax, dword [ebp - 0x440]
mov byte [eax], 0
mov dword [esp + 0x10], eax
mov eax, dword [ebx + 0x7c]
mov dword [esp + 0xc], eax
lea edx, [ebp - 0x42c]
mov dword [esp + 8], edx
mov dword [esp + 4], str._15__n:_:_____n_____n_
mov ecx, dword [ebp - 0x43c]
mov eax, dword [ecx + 0x3a0]
mov dword [esp], eax
call sub.msvcrt.dll_sscanf
dec eax
jle 0x673497cc
mov byte [ebp - 0x451], 0
lea edi, [ebp - 0x42c]
mov dword [ebp - 0x450], edi
mov esi, dword [ebx + 0x7c]
mov dword [esp + 4], 0x40
mov dword [esp], esi
call sub.msvcrt.dll_strchr
test eax, eax
je 0x67349754
mov dword [esp + 4], 0x3f
inc eax
mov dword [esp], eax
call sub.msvcrt.dll_strchr
mov edx, eax
test edx, edx
je 0x67349494
xor eax, eax
mov ecx, 0xffffffff
mov edi, edx
repne scasb al, byte es:[edi]
mov esi, ecx
not esi
lea edi, [esi - 1]
mov dword [ebp - 0x44c], edi
mov ecx, 0xffffffff
mov edi, dword [ebp - 0x440]
repne scasb al, byte es:[edi]
not ecx
mov dword [esp + 8], ecx
mov eax, dword [ebp - 0x440]
mov dword [esp + 4], eax
add esi, eax
mov dword [esp], esi
mov dword [ebp - 0x458], edx
call sub.msvcrt.dll_memmove
mov eax, dword [ebp - 0x440]
inc eax
mov edx, dword [ebp - 0x458]
mov edi, eax
mov esi, edx
mov ecx, dword [ebp - 0x44c]
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp - 0x440]
mov byte [ecx], 0x2f
mov byte [edx], 0
mov al, byte [ecx]
cmp al, 0x3f
je 0x6734976c
mov eax, dword [ebx + 0x7c]
cmp byte [eax], 0x5b
je 0x67349540
mov edx, dword [ebp - 0x43c]
mov eax, dword [edx + 0x374]
test eax, eax
jne 0x67348d4c
mov dword [esp + 4], 0x23
mov ecx, dword [ebp - 0x440]
mov dword [esp], ecx
call sub.msvcrt.dll_strchr
test eax, eax
je 0x67348abf
mov byte [eax], 0
mov edi, 0x673971a0
mov esi, 0x67399980
mov dword [ebp - 0x440], ebx
mov ebx, dword [ebp - 0x450]
jmp 0x67348ae1
add edi, 4
mov esi, dword [edi]
test esi, esi
je 0x67348b1c
mov dword [esp + 4], ebx
mov eax, dword [esi]
mov dword [esp], eax
call fcn.67369634
test eax, eax
je 0x67348ad8
mov ebx, dword [ebp - 0x440]
mov eax, dword [esi + 0x34]
mov edi, dword [ebp - 0x43c]
test dword [edi + 0x378], eax
je 0x67348b1c
cmp byte [edi + 0x84e0], 0
je 0x67348b5c
test dword [edi + 0x37c], eax
jne 0x67348b5c
nop
mov eax, dword [ebp - 0x450]
mov dword [esp + 8], eax
mov dword [esp + 4], str.Protocol__s_not_supported_or_disabled_in_libcurl
mov edx, dword [ebp - 0x43c]
mov dword [esp], edx
call fcn.67346d80
mov esi, 1
mov eax, esi
add esp, 0x46c
pop ebx
pop esi
pop edi
leave
ret
mov byte [ebx + 0x12e], 0
jmp 0x673487c6
mov dword [ebx + 0x144], esi
or dword [ebx + 0x30], eax
cmp byte [ebp - 0x451], 0
je 0x67348bab
mov ecx, dword [ebp - 0x43c]
mov eax, dword [ecx + 0x3a0]
mov dword [esp + 8], eax
mov eax, dword [esi]
mov dword [esp + 4], eax
mov dword [esp], str._s:___s
call fcn.673454ec
test eax, eax
je 0x67348d0c
mov edi, dword [ebp - 0x43c]
mov dword [edi + 0x3a0], eax
mov byte [edi + 0x3a4], 1
mov esi, dword [ebx + 0x7c]
mov dword [esp + 4], 0x40
mov dword [esp], esi
call sub.msvcrt.dll_strchr
mov byte [ebp - 0x12c], 0
mov byte [ebp - 0x22c], 0
test eax, eax
je 0x67348c3e
inc eax
mov dword [ebx + 0x7c], eax
mov byte [ebx + 0x13f], 1
mov eax, dword [ebp - 0x43c]
cmp dword [eax + 0x2ac], 2
je 0x67348c3e
mov byte [ebx + 0x130], 1
cmp byte [esi], 0x3a
je 0x673497a4
lea edx, [ebp - 0x22c]
mov dword [ebp - 0x440], edx
mov dword [esp + 0xc], edx
lea eax, [ebp - 0x12c]
mov dword [esp + 8], eax
mov dword [esp + 4], str._255_:__:_255___
mov dword [esp], esi
call sub.msvcrt.dll_sscanf
cmp byte [ebp - 0x12c], 0
jne 0x673495a4
cmp byte [ebp - 0x22c], 0
jne 0x6734960c
cmp byte [ebx + 0x131], 0
je 0x67348d88
mov dword [ebp - 0x42c], 0
lea edi, [ebp - 0x428]
xor eax, eax
mov ecx, 0xfc
rep stosb byte es:[edi], al
mov dword [ebp - 0x32c], 0
lea edi, [ebp - 0x328]
mov cl, 0xfc
rep stosb byte es:[edi], al
mov edi, dword [ebp - 0x43c]
mov eax, dword [edi + 0x358]
test eax, eax
je 0x67348ca9
mov dword [esp + 8], 0x100
mov dword [esp + 4], eax
lea eax, [ebp - 0x42c]
mov dword [esp], eax
call sub.msvcrt.dll_strncpy
mov byte [ebp - 0x32d], 0
mov edx, dword [ebp - 0x43c]
mov eax, dword [edx + 0x35c]
test eax, eax
je 0x67348cda
mov dword [esp + 8], 0x100
mov dword [esp + 4], eax
lea eax, [ebp - 0x32c]
mov dword [esp], eax
call sub.msvcrt.dll_strncpy
mov byte [ebp - 0x22d], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
lea ecx, [ebp - 0x42c]
mov dword [esp + 4], ecx
mov edi, dword [ebp - 0x43c]
mov dword [esp], edi
call fcn.67369d0c
mov dword [ebx + 0xa4], eax
test eax, eax
jne 0x67348d5c
mov esi, 0x1b
mov eax, esi
add esp, 0x46c
pop ebx
pop esi
pop edi
leave
ret
mov esi, 0x102
jmp 0x673488e9
mov edi, dword [ebp - 0x448]
mov dword [edi], 0
mov esi, 0x1b
mov eax, esi
add esp, 0x46c
pop ebx
pop esi
pop edi
leave
ret
mov dword [ebx + 0x6c], eax
jmp 0x67348aa2
mov al, 1
jmp 0x673487c8
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
lea eax, [ebp - 0x32c]
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.67369d0c
mov dword [ebx + 0xa8], eax
test eax, eax
je 0x67348d0c
mov edx, dword [ebp - 0x43c]
mov eax, dword [edx + 0x320]
test eax, eax
je 0x6734983a
mov dword [esp], eax
call dword [0x67391010]
mov esi, eax
test eax, eax
je 0x67349a9d
mov edi, dword [ebp + 0x55535756]
sub esp, 0x34
mov ebx, dword [0x673943cf]
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov esi, dword [eax + 0xc]
add esi, 0xc
mov ebp, dword [esi]
jmp 0x67348de8
mov ecx, dword [ebp + 0x30]
call fcn.6734950d
cmp ebx, eax
jne 0x67348de5
mov eax, dword [ebp + 0x18]
mov dword [esp], eax
jmp 0x67348df3
mov ebp, dword [ebp]
cmp ebp, esi
jne 0x67348dd1
mov dword [esp], 0
mov eax, dword [esp]
lea edx, [0x6739441f]
mov ecx, dword [edx]
mov ebp, dword [edx - 0x20]
mov edx, dword [eax + 0x3c]
add edx, eax
mov dword [esp + 0xc], ebp
mov ebp, dword [0x6739440b]
mov edx, dword [edx + ecx*8 + 0x78]
lea ecx, [edx + eax + 0x24]
mov ebx, dword [ecx]
mov esi, dword [ecx - 4]
add ebx, eax
mov edi, dword [ecx - 8]
add esi, eax
add edi, eax
mov eax, dword [ecx - 0xc]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x10], esi
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], eax
test eax, eax
jbe 0x67348eb0
mov dword [esp + 4], 0
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 4]
mov ebx, dword [esp]
add ebx, dword [eax + edx*4]
mov ecx, ebx
call fcn.673494fd
mov dword [esp + 8], eax
xor edi, edi
test eax, eax
jbe 0x67348e83
xor esi, esi
movzx edx, byte [esi + ebx]
xor eax, eax
test ebp, ebp
jbe 0x67348e79
xor ecx, ecx
inc ecx
add eax, edi
cmp ecx, ebp
jb 0x67348e72
inc esi
lea edi, [eax + edx]
cmp esi, dword [esp + 8]
jb 0x67348e66
cmp edi, dword [esp + 0xc]
jne 0x67348ea1
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 4]
mov ecx, dword [esp + 0x18]
movzx ebx, word [eax + edx*2]
mov eax, dword [esp]
add eax, dword [ecx + ebx*4]
jmp 0x67348eb2
mov eax, dword [esp + 4]
inc eax
mov dword [esp + 4], eax
cmp eax, dword [esp + 0x14]
jb 0x67348e45
xor eax, eax
mov edx, dword [0x673943e3]
push edx
push 0
call eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea edx, [0x6739441f]
mov ecx, dword [edx]
mov ebp, dword [edx - 0xc]
mov edx, dword [eax + 0x3c]
add edx, eax
mov dword [esp + 0x10], ebp
mov ebp, dword [0x6739440b]
mov edx, dword [edx + ecx*8 + 0x78]
lea ecx, [edx + eax + 0x24]
mov ebx, dword [ecx]
mov esi, dword [ecx - 4]
add ebx, eax
mov edi, dword [ecx - 8]
add esi, eax
add edi, eax
mov eax, dword [ecx - 0xc]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x14], esi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], eax
test eax, eax
jbe 0x67348f7e
mov dword [esp + 8], 0
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 8]
mov ebx, dword [esp]
add ebx, dword [eax + edx*4]
mov ecx, ebx
call fcn.673494fd
mov dword [esp + 0xc], eax
xor edi, edi
test eax, eax
jbe 0x67348f51
xor esi, esi
movzx edx, byte [esi + ebx]
xor eax, eax
test ebp, ebp
jbe 0x67348f47
xor ecx, ecx
inc ecx
add eax, edi
cmp ecx, ebp
jb 0x67348f40
inc esi
lea edi, [eax + edx]
cmp esi, dword [esp + 0xc]
jb 0x67348f34
cmp edi, dword [esp + 0x10]
jne 0x67348f6f
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0x1c]
movzx ebx, word [eax + edx*2]
mov eax, dword [esp]
add eax, dword [ecx + ebx*4]
jmp 0x67348f80
mov eax, dword [esp + 8]
inc eax
mov dword [esp + 8], eax
cmp eax, dword [esp + 0x18]
jb 0x67348f13
xor eax, eax
push 0x104
push dword [esp + 8]
push 0
call eax
mov edx, eax
mov ecx, dword [esp + 4]
mov eax, dword [str.hB9g_rU9g]
mov ebp, dword [0x67394403]
movzx ebx, word [ecx + edx*2 - 2]
cmp bx, bp
je 0x67348fc3
mov ebx, dword [esp + 4]
xor ecx, ecx
mov word [ebx + edx*2], cx
dec edx
mov esi, dword [0x67394403]
movzx ebp, word [ebx + edx*2 - 2]
cmp bp, si
jne 0x67348fa8
cmp byte [eax], 0
je 0x67348fdf
xor ecx, ecx
mov ebp, dword [esp + 4]
movsx ebx, byte [ecx + eax]
inc ecx
mov word [ebp + edx*2], bx
inc edx
cmp byte [ecx + eax], 0
jne 0x67348fca
mov eax, dword [esp]
lea edx, [0x6739441f]
mov ecx, dword [edx]
mov ebp, dword [edx - 0x40]
mov edx, dword [eax + 0x3c]
add edx, eax
mov dword [esp + 0x10], ebp
mov ebp, dword [0x6739440b]
mov edx, dword [edx + ecx*8 + 0x78]
lea ecx, [edx + eax + 0x24]
mov ebx, dword [ecx]
mov esi, dword [ecx - 4]
add ebx, eax
mov edi, dword [ecx - 8]
add esi, eax
add edi, eax
mov eax, dword [ecx - 0xc]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x14], esi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], eax
test eax, eax
jbe 0x6734909c
mov dword [esp + 8], 0
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 8]
mov ebx, dword [esp]
add ebx, dword [eax + edx*4]
mov ecx, ebx
call fcn.673494fd
mov dword [esp + 0xc], eax
xor edi, edi
test eax, eax
jbe 0x6734906f
xor esi, esi
movzx edx, byte [esi + ebx]
xor eax, eax
test ebp, ebp
jbe 0x67349065
xor ecx, ecx
inc ecx
add eax, edi
cmp ecx, ebp
jb 0x6734905e
inc esi
lea edi, [eax + edx]
cmp esi, dword [esp + 0xc]
jb 0x67349052
cmp edi, dword [esp + 0x10]
jne 0x6734908d
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0x1c]
movzx ebx, word [eax + edx*2]
mov eax, dword [esp]
add eax, dword [ecx + ebx*4]
jmp 0x6734909e
mov eax, dword [esp + 8]
inc eax
mov dword [esp + 8], eax
cmp eax, dword [esp + 0x18]
jb 0x67349031
xor eax, eax
mov edx, 0x673943bf
xor ebp, ebp
push ebp
mov edi, dword [edx + 0x5c]
mov esi, dword [edx + 0x64]
mov ebx, dword [edx + 0xc]
mov ecx, dword [edx + 0x50]
push ecx
push ebx
push ebp
push esi
push edi
push dword [esp + 0x1c]
call eax
mov dword [esp + 0x10], eax
mov eax, dword [esp]
lea edx, [0x6739441f]
mov ecx, dword [edx]
mov ebp, dword [edx - 8]
mov edx, dword [eax + 0x3c]
add edx, eax
mov dword [esp + 0x14], ebp
mov ebp, dword [0x6739440b]
mov edx, dword [edx + ecx*8 + 0x78]
lea ecx, [edx + eax + 0x24]
mov ebx, dword [ecx]
mov esi, dword [ecx - 4]
add ebx, eax
mov edi, dword [ecx - 8]
add esi, eax
add edi, eax
mov eax, dword [ecx - 0xc]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x18], esi
mov dword [esp + 0x20], edi
mov dword [esp + 0x1c], eax
test eax, eax
jbe 0x6734917e
mov dword [esp + 8], 0
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 8]
mov ebx, dword [esp]
add ebx, dword [eax + edx*4]
mov ecx, ebx
call fcn.673494fd
mov dword [esp + 0xc], eax
xor edi, edi
test eax, eax
jbe 0x67349151
xor esi, esi
movzx edx, byte [esi + ebx]
xor eax, eax
test ebp, ebp
jbe 0x67349147
xor ecx, ecx
inc ecx
add eax, edi
cmp ecx, ebp
jb 0x67349140
inc esi
lea edi, [eax + edx]
cmp esi, dword [esp + 0xc]
jb 0x67349134
cmp edi, dword [esp + 0x14]
jne 0x6734916f
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0x20]
movzx ebx, word [eax + edx*2]
mov eax, dword [esp]
add eax, dword [ecx + ebx*4]
jmp 0x67349180
mov eax, dword [esp + 8]
inc eax
mov dword [esp + 8], eax
cmp eax, dword [esp + 0x1c]
jb 0x67349113
xor eax, eax
push 0
push dword [esp + 0x14]
call eax
mov dword [esp + 0xc], eax
cmp dword [esp + 0xc], 0
jne 0x6734919a
xor eax, eax
jmp 0x673494f3
mov eax, dword [esp]
lea edx, [0x6739441f]
mov ecx, dword [edx]
mov ebp, dword [edx - 0x4c]
mov edx, dword [eax + 0x3c]
add edx, eax
mov dword [esp + 0x18], ebp
mov ebp, dword [0x6739440b]
mov edx, dword [edx + ecx*8 + 0x78]
lea ecx, [edx + eax + 0x24]
mov ebx, dword [ecx]
mov esi, dword [ecx - 4]
add ebx, eax
mov edi, dword [ecx - 8]
add esi, eax
add edi, eax
mov eax, dword [ecx - 0xc]
mov dword [esp + 0x28], ebx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x24], edi
mov dword [esp + 0x20], eax
test eax, eax
jbe 0x67349257
mov dword [esp + 8], 0
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 8]
mov ebx, dword [esp]
add ebx, dword [eax + edx*4]
mov ecx, ebx
call fcn.673494fd
mov dword [esp + 0x14], eax
xor edi, edi
test eax, eax
jbe 0x6734922a
xor esi, esi
movzx edx, byte [esi + ebx]
xor eax, eax
test ebp, ebp
jbe 0x67349220
xor ecx, ecx
inc ecx
add eax, edi
cmp ecx, ebp
jb 0x67349219
inc esi
lea edi, [eax + edx]
cmp esi, dword [esp + 0x14]
jb 0x6734920d
cmp edi, dword [esp + 0x18]
jne 0x67349248
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0x24]
movzx ebx, word [eax + edx*2]
mov eax, dword [esp]
add eax, dword [ecx + ebx*4]
jmp 0x67349259
mov eax, dword [esp + 8]
inc eax
mov dword [esp + 8], eax
cmp eax, dword [esp + 0x20]
jb 0x673491ec
xor eax, eax
xor edx, edx
lea ecx, [esp + 0x18]
mov dword [ecx], edx
push edx
push ecx
push dword [esp + 0x14]
push dword [esp + 0x10]
push dword [esp + 0x20]
call eax
mov ecx, dword [esp + 4]
mov ebx, dword [0x673943eb]
mov eax, dword [esp + 0x18]
add eax, ecx
mov dword [esp + 0x14], eax
lea edx, [ecx + ebx]
mov eax, dword [edx]
lea ecx, [edx + 8]
mov ebp, dword [edx + 4]
mov dword [esp + 0x24], edx
test eax, eax
jbe 0x673492a4
xor edx, edx
inc edx
add dword [ecx], ebp
add ecx, 4
cmp edx, eax
jb 0x6734929a
mov eax, dword [esp]
mov ecx, 0x673943bf
mov ebx, dword [eax + 0x3c]
add ebx, eax
mov ebp, dword [ecx + 0x48]
mov esi, dword [ecx + 0x60]
mov edx, dword [ecx + 0x28]
mov dword [esp + 0x2c], ebp
mov ebx, dword [ebx + esi*8 + 0x78]
mov dword [esp + 0xc], edx
mov ebp, dword [ecx + 0x4c]
lea esi, [ebx + eax + 0x24]
mov edi, dword [esi]
mov edx, dword [esi - 4]
add edi, eax
mov ecx, dword [esi - 8]
add edx, eax
add ecx, eax
mov eax, dword [esi - 0xc]
mov dword [esp + 0x28], edi
mov dword [esp + 0x10], edx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x1c], eax
test eax, eax
jbe 0x67349369
mov dword [esp + 4], 0
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 4]
mov ebx, dword [esp]
add ebx, dword [eax + edx*4]
mov ecx, ebx
call fcn.673494fd
mov dword [esp + 8], eax
xor edi, edi
test eax, eax
jbe 0x67349338
xor esi, esi
movzx edx, byte [esi + ebx]
xor eax, eax
test ebp, ebp
jbe 0x6734932e
xor ecx, ecx
inc ecx
add eax, edi
cmp ecx, ebp
jb 0x67349327
inc esi
lea edi, [eax + edx]
cmp esi, dword [esp + 8]
jb 0x6734931b
cmp edi, dword [esp + 0xc]
jne 0x6734935a
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 4]
mov ecx, dword [esp + 0x20]
mov ebp, dword [esp]
movzx ebx, word [eax + edx*2]
add ebp, dword [ecx + ebx*4]
mov dword [esp + 8], ebp
jmp 0x67349371
mov eax, dword [esp + 4]
inc eax
mov dword [esp + 4], eax
cmp eax, dword [esp + 0x1c]
jb 0x673492fa
mov dword [esp + 8], 0
mov eax, dword [esp]
lea edx, [0x6739441f]
mov ecx, dword [edx]
mov ebp, dword [edx - 0x24]
mov edx, dword [eax + 0x3c]
add edx, eax
mov dword [esp + 0x10], ebp
mov ebp, dword [0x6739440b]
mov edx, dword [edx + ecx*8 + 0x78]
lea ecx, [edx + eax + 0x24]
mov ebx, dword [ecx]
mov esi, dword [ecx - 4]
add ebx, eax
mov edi, dword [ecx - 8]
add esi, eax
add edi, eax
mov eax, dword [ecx - 0xc]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x28], edi
mov dword [esp + 0x20], eax
test eax, eax
jbe 0x67349431
mov dword [esp + 4], 0
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 4]
mov ebx, dword [esp]
add ebx, dword [eax + edx*4]
mov ecx, ebx
call fcn.673494fd
mov dword [esp + 0xc], eax
xor edi, edi
test eax, eax
jbe 0x67349401
xor esi, esi
movzx edx, byte [esi + ebx]
xor eax, eax
test ebp, ebp
jbe 0x673493f7
xor ecx, ecx
inc ecx
add eax, edi
cmp ecx, ebp
jb 0x673493f0
inc esi
lea edi, [eax + edx]
cmp esi, dword [esp + 0xc]
jb 0x673493e4
cmp edi, dword [esp + 0x10]
jne 0x67349422
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 4]
mov ecx, dword [esp + 0x28]
mov ebp, dword [esp]
movzx ebx, word [eax + edx*2]
add ebp, dword [ecx + ebx*4]
mov dword [esp], ebp
jmp 0x67349438
mov eax, dword [esp + 4]
inc eax
mov dword [esp + 4], eax
cmp eax, dword [esp + 0x20]
jb 0x673493c3
mov dword [esp], 0
mov ebx, dword [esp + 0x24]
mov eax, dword [esp + 0x2c]
mov edx, dword [0x67394423]
lea ebx, [ebx + eax + 0x1e]
add ebx, dword [esi]
add edx, ebx
push edx
call dword [esp + 0xc]
mov edx, eax
movsx esi, byte [ebx]
add ebx, esi
mov ecx, dword [0x673943f7]
lea edi, [esp + 4]
add ecx, ebx
mov ebp, dword [edx + 0x3c]
mov esi, dword [ebx + 4]
mov ebx, dword [ebx + 8]
mov ebp, dword [ebp + edx + 0x2c]
mov dword [edi + 0x18], ecx
add ebp, edx
mov dword [edi], 0
push edi
mov eax, dword [0x673943db]
push eax
cmp dword [edi + 0x50], esp
push ebx
push ebp
call dword [esp + 0x10]
push ebx
mov ecx, ebp
mov edx, dword [esp + 0x20]
call fcn.6734954d
lea eax, [esp + 4]
push eax
add byte [ebp + 0x50042444], cl
push dword [esp + 8]
push ebx
push ebp
call dword [esp + 0x10]
mov edx, dword [str.mhdl]
xor eax, eax
cmp byte [edx], 0
je 0x673494ce
sbb eax, 0x43c70d8d
cmp dword [edi - 0x75], esp
adc dword [edi], ecx
mov esi, 0x548b023c
and al, 0x14
lea ecx, [0x673943c7]
mov edx, dword [ecx]
movsx edi, byte [edx + eax]
mov edx, dword [esp + 0x14]
mov word [edx + eax*2], di
inc eax
mov edx, dword [ecx]
cmp byte [edx + eax], 0
jne 0x673494b1
mov edi, dword [esp + 0x14]
lea ecx, [esp + 8]
xor edx, edx
add esi, ebp
mov word [edi + eax*2], dx
mov eax, dword [ecx + 0x14]
add eax, ebx
mov dword [ecx + 4], edi
mov dword [ecx], eax
mov byte [ecx + 8], 1
push ecx
call esi
pop eax
xor eax, eax
inc eax
add esp, 0x34
pop ebp
pop ebx
pop edi
pop esi
ret
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
lea edx, [ebp - 0x12c]
mov dword [esp + 4], edx
mov edi, dword [ebp - 0x43c]
mov dword [esp], edi
mov dword [ebp - 0x458], edx
call fcn.67369d0c
mov esi, eax
test eax, eax
mov edx, dword [ebp - 0x458]
je 0x67348d0c
xor eax, eax
mov ecx, 0xffffffff
mov edi, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 0xff
jbe 0x673496a4
mov dword [esp], esi
call dword [0x67391008]
jmp 0x67348c31
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov eax, dword [ebp - 0x440]
mov dword [esp + 4], eax
mov edx, dword [ebp - 0x43c]
mov dword [esp], edx
call fcn.67369d0c
mov esi, eax
test eax, eax
je 0x67348d0c
xor eax, eax
mov ecx, 0xffffffff
mov edi, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 0xff
jbe 0x67349726
mov dword [esp], esi
call dword [0x67391008]
jmp 0x67348c3e
mov dword [esp + 4], esi
mov dword [esp], edx
call sub.msvcrt.dll_strcpy
jmp 0x673495fc
mov dword [esp + 4], esi
mov ecx, dword [ebp - 0x440]
mov dword [esp], ecx
call sub.msvcrt.dll_strcpy
jmp 0x67349658
mov dword [esp + 4], 0x3f
mov dword [esp], esi
call sub.msvcrt.dll_strchr
mov edx, eax
jmp 0x67348a06
xor eax, eax
mov ecx, 0xffffffff
mov edi, dword [ebp - 0x440]
repne scasb al, byte es:[edi]
not ecx
mov dword [esp + 8], ecx
mov eax, dword [ebp - 0x440]
mov dword [esp + 4], eax
inc eax
mov dword [esp], eax
call sub.msvcrt.dll_memmove
mov edx, dword [ebp - 0x440]
mov byte [edx], 0x2f
jmp 0x67348a82
lea ecx, [ebp - 0x22c]
mov dword [ebp - 0x440], ecx
mov dword [esp + 8], ecx
mov dword [esp + 4], str.:_255___
mov dword [esp], esi
call sub.msvcrt.dll_sscanf
jmp 0x67348c24
mov edi, dword [ebp - 0x440]
mov dword [esp + 0xc], edi
mov eax, dword [ebx + 0x7c]
mov dword [esp + 8], eax
mov dword [esp + 4], str.___n_____n_
mov edx, dword [ebp - 0x43c]
mov eax, dword [edx + 0x3a0]
mov dword [esp], eax
call sub.msvcrt.dll_sscanf
test eax, eax
jle 0x67349936
mov dword [esp + 8], 4
mov eax, dword [ebx + 0x7c]
mov dword [esp + 4], eax
mov dword [esp], str.FTP.
call fcn.673696c4
test eax, eax
je 0x67349b27
mov byte [ebp - 0x451], 1
mov dword [ebp - 0x450], 0x67396ddf
jmp 0x673489d8
xor esi, esi
jmp 0x67348daf
mov dword [esp + 4], str._url__malformed
mov ecx, dword [ebp - 0x43c]
mov dword [esp], ecx
call fcn.67346d80
mov esi, 3
jmp 0x67348d11
mov dword [esp + 4], str.memory_shortage
mov ecx, dword [ebp - 0x43c]
mov dword [esp], ecx
call fcn.67346d80
mov si, 0x1b
jmp 0x67348d11
mov dword [esp + 8], 5
mov eax, dword [ebx + 0x7c]
mov dword [esp + 4], eax
mov dword [esp], str.DICT.
call fcn.673696c4
test eax, eax
je 0x6734a34b
mov byte [ebp - 0x451], 1
mov dword [ebp - 0x450], 0x67396dda
jmp 0x673489d8
mov dword [esp + 8], 5
mov eax, dword [ebx + 0x7c]
mov dword [esp + 4], eax
mov dword [esp], str.LDAP.
call fcn.673696c4
test eax, eax
je 0x6734a5a8
mov byte [ebp - 0x451], 1
mov dword [ebp - 0x450], 0x67396ded
jmp 0x673489d8
mov dword [esp + 8], 5
mov eax, dword [ebx + 0x7c]
mov dword [esp + 4], eax
mov dword [esp], str.IMAP.
call fcn.673696c4
test eax, eax
je 0x6734a667
mov byte [ebp - 0x451], 1
mov dword [ebp - 0x450], str.IMAP
jmp 0x673489d8
mov byte [ebp - 0x451], 1
mov dword [ebp - 0x450], str.http
jmp 0x673489d8