Function at 0x4731d0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x58f23f
mov eax, dword fs:[0]
push eax
sub esp, 0xf8
mov eax, dword [0x5fae30]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp + 8]
mov edi, ecx
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0xc0], 0
cmp byte [edi + 0x14], 0
mov dword [ebp - 0xc4], edi
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xe0], ecx
jne 0x473426
cmp dword [ebp + 0xc], 0xa
mov byte [edi + 0x28], 0
mov byte [edi + 0x78], 1
mov byte [edi + 0x99], 0
jbe 0x47341c
push 3
push 0x5b44c8
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
je 0x4733dc
push 4
push 0x5b44cc
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
je 0x4733dc
push 4
push str.HEAD
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
je 0x4733dc
push 3
push 0x5b44dc
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
je 0x4733dc
push 6
push 0x5b44e0
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
je 0x4733dc
push 5
push str.TRACE
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
je 0x4733dc
push 7
push 0x5b44f0
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
je 0x4733dc
push 7
push 0x5b44f8
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
je 0x4733dc
push 8
push 0x5b4500
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
je 0x4733dc
push 9
push str.PROPPATCH
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
je 0x4733dc
push 5
push str.MKCOL
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
je 0x4733dc
push 4
push str.COPY
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
je 0x4733dc
push 4
push str.MOVE
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
je 0x4733dc
push 4
push 0x5b4530
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
je 0x4733dc
push 6
push 0x5b4538
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
je 0x4733dc
push 6
push 0x5b4540
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
je 0x4733dc
push 6
push str.UNLOCK
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
je 0x4733dc
push 7
push str.HTTP_1.
push esi
call fcn.00541380
add esp, 0xc
test eax, eax
jne 0x47341c
mov eax, edi
lea ebx, [eax + 0x2c]
lea edi, [eax + 0x3c]
mov byte [eax + 0x14], 1
cmp edi, ebx
je 0x47340f
mov eax, dword [edi + 4]
mov ecx, dword [eax]
push eax
push ecx
lea edx, [ebp - 0xdc]
push edx
mov ecx, edi
call fcn.00406f3c
push ebx
mov ecx, edi
call fcn.00404a5c
mov eax, dword [ebp - 0xc4]
mov edi, dword [ebp - 0xc4]
mov byte [eax + 0x98], 0
cmp byte [edi + 0x14], 0
je 0x4743a9
mov eax, dword [edi + 0x18]
lea ebx, [edi + 0x18]
mov byte [ebp - 0xb9], 0
mov dword [ebp - 0xd8], ebx
cmp eax, dword [ebx + 4]
je 0x473445
mov byte [ebp - 0xb9], 1
xor eax, eax
mov dword [ebp - 0xcc], eax
cmp dword [ebp + 0xc], eax
jbe 0x473530
mov dword [ebp - 0xd4], esi
lea esp, [esp]
mov eax, dword [ebx + 4]
cmp esi, eax
jae 0x4734c1
mov edx, dword [ebx]
cmp edx, esi
ja 0x4734c1
mov ecx, dword [ebx + 8]
mov edi, esi
sub edi, edx
cmp eax, ecx
jne 0x4734b1
sub eax, edx
cmp eax, 0xfffffffe
ja 0x4736c8
inc eax
sub ecx, edx
cmp eax, ecx
jbe 0x4734b1
mov edx, ecx
shr edx, 1
or esi, 0xffffffff
sub esi, edx
cmp esi, ecx
jae 0x47349b
xor ecx, ecx
jmp 0x47349d
add ecx, edx
cmp ecx, eax
jae 0x4734a3
mov ecx, eax
push ecx
mov ecx, ebx
call fcn.00407e5a
mov esi, dword [ebp - 0xd4]
mov ecx, dword [ebx + 4]
mov eax, dword [ebx]
test ecx, ecx
je 0x473508
mov dl, byte [eax + edi]
mov byte [ecx], dl
jmp 0x473508
mov ecx, dword [ebx + 8]
cmp eax, ecx
jne 0x4734fd
mov edx, dword [ebx]
sub eax, edx
cmp eax, 0xfffffffe
ja 0x4736c8
inc eax
sub ecx, edx
cmp eax, ecx
jbe 0x4734fd
mov edx, ecx
shr edx, 1
or edi, 0xffffffff
sub edi, edx
cmp edi, ecx
jae 0x4734ed
xor ecx, ecx
jmp 0x4734ef
add ecx, edx
cmp ecx, eax
jae 0x4734f5
mov ecx, eax
push ecx
mov ecx, ebx
call fcn.00407e5a
mov eax, dword [ebx + 4]
test eax, eax
je 0x473508
mov cl, byte [esi]
mov byte [eax], cl
mov eax, dword [ebp - 0xcc]
inc dword [ebx + 4]
inc eax
inc esi
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xd4], esi
cmp eax, dword [ebp + 0xc]
jb 0x473460
mov edi, dword [ebp - 0xc4]
xor eax, eax
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0xf0], eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x34], 0xf
mov dword [ebp - 0x38], eax
mov byte [ebp - 0x48], 0
cmp byte [ebp - 0xb9], 0
mov byte [ebp - 4], 1
jne 0x47358f
mov eax, dword [ebx]
mov ecx, dword [edi + 0x1c]
cmp eax, ecx
jae 0x47357c
lea esp, [esp]
cmp byte [eax], 0xa
je 0x47357a
inc eax
cmp eax, ecx
jb 0x473570
cmp eax, ecx
je 0x47358f
dec eax
cmp eax, ecx
je 0x47358f
cmp byte [eax], 0xd
je 0x47358f
mov byte [edi + 0x99], 1
mov ebx, dword [ebx]
mov edi, dword [edi + 0x1c]
mov dword [ebp - 0xd4], ebx
cmp ebx, edi
jae 0x4735e2
mov eax, ebx
mov ebx, dword [ebp - 0xc4]
mov dl, byte [ebx + 0x99]
mov cl, byte [eax]
test dl, dl
jne 0x4736d2
cmp cl, 0xd
je 0x4736db
push ecx
push 1
lea ecx, [ebp - 0x48]
call fcn.00405ea2
mov eax, dword [ebp - 0xd4]
mov ebx, dword [ebp - 0xc4]
inc eax
mov dword [ebp - 0xd4], eax
cmp eax, dword [ebx + 0x1c]
jb 0x4735a6
mov ebx, dword [ebp - 0xd8]
mov eax, dword [ebx + 4]
mov edi, dword [ebx]
cmp edi, eax
je 0x473605
mov esi, eax
sub esi, eax
push esi
push eax
push edi
call fcn.0053f450
add esp, 0xc
add esi, edi
mov dword [ebx + 4], esi
cmp dword [ebp - 0x38], 0
je 0x47363b
xor esi, esi
cmp dword [ebp - 0x38], esi
jbe 0x473634
mov edi, dword [ebp - 0xd8]
cmp dword [ebp - 0x34], 0x10
mov eax, dword [ebp - 0x48]
jae 0x473624
lea eax, [ebp - 0x48]
add eax, esi
push eax
mov ecx, edi
call fcn.00404eee
inc esi
cmp esi, dword [ebp - 0x38]
jb 0x473618
mov byte [ebp - 0xb9], 1
mov eax, dword [ebp - 0xc4]
cmp byte [eax + 0x28], 0
je 0x47364b
mov byte [eax + 0x14], 0
cmp byte [ebp - 0xb9], 0
je 0x474372
mov eax, dword [ebp - 0xf4]
mov edi, dword [ebp - 0xf8]
mov esi, dword [ebp - 0xe0]
sub eax, edi
push eax
mov dword [esi], eax
call fcn.0053e9b3
mov edx, dword [ebp - 0xe4]
mov dword [edx], eax
mov ecx, dword [esi]
add esp, 4
test ecx, ecx
je 0x473690
push ecx
push edi
push eax
call fcn.0053f0e0
add esp, 0xc
cmp dword [ebp - 0x34], 0x10
jb 0x4736a2
mov eax, dword [ebp - 0x48]
push eax
call fcn.0053ed60
add esp, 4
mov dword [ebp - 0x34], 0xf
mov dword [ebp - 0x38], 0
mov byte [ebp - 0x48], 0
test edi, edi
je 0x4736c1
push edi
call fcn.0053ed60
add esp, 4
mov al, 1
jmp 0x4743ab
push str.vector_T__too_long
call fcn.0053e79c
cmp cl, 0xa
jne 0x4735bf
inc eax
cmp eax, dword [ebx + 0x1c]
je 0x4736e6
cmp byte [eax], 0xa
je 0x4736ee
test dl, dl
je 0x4735bf
xor edx, edx
mov ecx, 0xf
mov dword [ebp - 0x88], ecx
mov dword [ebp - 0x8c], edx
mov byte [ebp - 0x9c], dl
mov byte [ebp - 0xc5], dl
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x70], edx
mov byte [ebp - 0x80], dl
mov byte [ebp - 4], 3
cmp dword [ebp - 0x38], edx
jne 0x473a35
mov byte [ebx + 0x28], 1
mov dword [ebp - 0xd4], eax
cmp dword [ebx + 0x44], edx
je 0x473e0e
mov eax, dword [ebx + 0x40]
mov edi, dword [eax]
mov byte [ebp - 0xb9], 1
cmp edi, eax
je 0x473e0e
lea ebx, [ebx]
mov eax, dword [ebp - 0xc4]
cmp byte [eax + 0x98], 0
jne 0x473807
cmp dword [eax + 0x8c], 0
je 0x473807
push 6
push 0x5b4558
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
call fcn.00402a36
or dword [ebp - 0xc0], 1
lea eax, [edi + 0xc]
push eax
lea edx, [ebp - 0x64]
push edx
mov byte [ebp - 4], 4
call fcn.004031e8
add esp, 8
or dword [ebp - 0xc0], 2
cmp dword [ebp - 0x18], 0x10
mov edx, dword [ebp - 0x2c]
jae 0x4737bf
lea edx, [ebp - 0x2c]
mov esi, dword [eax + 0x10]
mov ecx, esi
cmp ecx, esi
jae 0x4737c8
mov ebx, dword [ebp - 0x1c]
mov ecx, esi
cmp esi, ebx
jb 0x4737d3
mov ecx, ebx
cmp dword [eax + 0x14], 0x10
jb 0x4737db
mov eax, dword [eax]
push ecx
push edx
push eax
call fcn.0040392c
add esp, 0xc
test eax, eax
jne 0x4737fc
cmp esi, ebx
jae 0x4737f3
or eax, 0xffffffff
jmp 0x4737fa
xor eax, eax
cmp esi, ebx
setne al
test eax, eax
sete al
test al, al
je 0x473807
mov bl, 1
jmp 0x473809
xor bl, bl
test byte [ebp - 0xc0], 2
je 0x47383d
and dword [ebp - 0xc0], 0xfffffffd
cmp dword [ebp - 0x50], 0x10
jb 0x47382b
mov eax, dword [ebp - 0x64]
push eax
call fcn.0053ed60
add esp, 4
mov dword [ebp - 0x50], 0xf
mov dword [ebp - 0x54], 0
mov byte [ebp - 0x64], 0
test byte [ebp - 0xc0], 1
mov dword [ebp - 4], 3
je 0x473866
and dword [ebp - 0xc0], 0xfffffffe
cmp dword [ebp - 0x18], 0x10
jb 0x473866
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.0053ed60
add esp, 4
lea esi, [edi + 0xc]
test bl, bl
je 0x473944
push 0xffffffffffffffff
push 0
lea edx, [esi + 0x1c]
push edx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
call fcn.004077b1
cmp dword [ebp - 0x1c], 0
mov byte [ebp - 4], 6
je 0x4738af
cmp dword [ebp - 0x18], 0x10
mov eax, dword [ebp - 0x2c]
jae 0x4738a9
lea eax, [ebp - 0x2c]
cmp byte [eax - 1], 0x3b
je 0x4738be
push 2
push 0x5b4560
lea ecx, [ebp - 0x2c]
call fcn.00403dd2
push 0xffffffffffffffff
push 0
push esi
lea ecx, [ebp - 0x48]
call fcn.0040373d
push 0x3a
push 1
lea ecx, [ebp - 0x48]
call fcn.00405ea2
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x48]
call fcn.0040373d
mov esi, dword [ebp - 0xc4]
push 0xffffffffffffffff
push 0
lea ecx, [esi + 0x7c]
push ecx
lea ecx, [ebp - 0x48]
call fcn.0040373d
cmp byte [esi + 0x99], 0
lea ecx, [ebp - 0x48]
jne 0x473912
push 2
push 0x5b4564
jmp 0x473919
push 1
push 0x5b4568
call fcn.00403dd2
cmp dword [ebp - 0x18], 0x10
mov byte [esi + 0x98], 1
mov byte [ebp - 4], 3
jb 0x4739dd
mov edx, dword [ebp - 0x2c]
push edx
call fcn.0053ed60
add esp, 4
jmp 0x4739dd
push 0x5b456c
lea eax, [ebp - 0x64]
push esi
push eax
call fcn.00402a6d
add esi, 0x1c
push esi
push eax
lea ecx, [ebp - 0x2c]
push ecx
mov byte [ebp - 4], 7
call fcn.004084ef
add esp, 0x18
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 8
call fcn.0040373d
mov esi, 0x10
cmp dword [ebp - 0x18], esi
jb 0x47398f
mov edx, dword [ebp - 0x2c]
push edx
call fcn.0053ed60
add esp, 4
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
mov byte [ebp - 4], 3
cmp dword [ebp - 0x50], esi
jb 0x4739b6
mov eax, dword [ebp - 0x64]
push eax
call fcn.0053ed60
add esp, 4
mov ecx, dword [ebp - 0xc4]
cmp byte [ecx + 0x99], 0
lea ecx, [ebp - 0x48]
jne 0x4739d1
push 2
push 0x5b4570
jmp 0x4739d8
push 1
push 0x5b4574
call fcn.00403dd2
cmp byte [edi + 0x45], 0
jne 0x473a22
mov ecx, dword [edi + 8]
cmp byte [ecx + 0x45], 0
jne 0x473a02
mov eax, dword [ecx]
cmp byte [eax + 0x45], 0
jne 0x4739fe
mov ecx, eax
mov eax, dword [ecx]
cmp byte [eax + 0x45], 0
je 0x4739f4
mov edi, ecx
jmp 0x473a22
mov eax, dword [edi + 4]
cmp byte [eax + 0x45], 0
jne 0x473a20
jmp 0x473a10
cmp edi, dword [eax + 8]
jne 0x473a20
mov edi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0x45], 0
je 0x473a10
mov edi, eax
mov edx, dword [ebp - 0xc4]
cmp edi, dword [edx + 0x40]
jne 0x473750
mov ebx, edx
jmp 0x473a6f
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0x48]
push ecx
lea edx, [ebp - 0x2c]
push edx
call fcn.00402d97
add esp, 0xc
push eax
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 9
call fcn.00401604
cmp dword [ebp - 0x18], 0x10
mov byte [ebp - 4], 3
jb 0x473a6f
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0053ed60
add esp, 4
cmp dword [ebp - 0x8c], 0
je 0x473e0e
cmp byte [ebx + 0x78], 0
jne 0x473e18
lea ecx, [ebp - 0x9c]
push ecx
lea edx, [ebp - 0x2c]
push edx
call fcn.004031e8
add esp, 8
mov esi, eax
push esi
lea ecx, [ebx + 0x4c]
mov byte [ebp - 4], 0xa
call fcn.00408ce2
mov dword [ebp - 0xcc], eax
cmp eax, dword [ebx + 0x50]
je 0x473adc
mov ecx, dword [eax + 0x1c]
add eax, 0xc
cmp dword [eax + 0x14], 0x10
jb 0x473ac1
mov eax, dword [eax]
push ecx
push eax
mov eax, dword [esi + 0x10]
push eax
push 0
mov ecx, esi
call fcn.00407a90
test eax, eax
js 0x473adc
lea eax, [ebp - 0xcc]
jmp 0x473aeb
mov ecx, dword [ebx + 0x50]
mov dword [ebp - 0xe8], ecx
lea eax, [ebp - 0xe8]
cmp dword [ebp - 0x18], 0x10
mov esi, dword [eax]
mov byte [ebp - 4], 3
jb 0x473b03
mov edx, dword [ebp - 0x2c]
push edx
call fcn.0053ed60
add esp, 4
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
cmp esi, dword [ebx + 0x50]
je 0x473b63
push 0xffffffffffffffff
lea eax, [esi + 0x28]
push 0
push eax
lea ecx, [ebp - 0x9c]
mov byte [ebp - 0xb9], 1
call fcn.004077b1
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x9c]
push eax
lea ecx, [ebp - 0x48]
call fcn.004077b1
push 0x3a
push 1
lea ecx, [ebp - 0x48]
call fcn.00405ea2
push 0xffffffffffffffff
push 0
lea ecx, [ebp - 0x80]
push ecx
lea ecx, [ebp - 0x48]
call fcn.0040373d
lea edx, [ebp - 0x9c]
push edx
lea eax, [ebp - 0x2c]
push eax
call fcn.004031e8
add esp, 8
mov esi, eax
push esi
lea ecx, [ebx + 4]
mov byte [ebp - 4], 0xb
call fcn.00408ce2
mov dword [ebp - 0xcc], eax
cmp eax, dword [ebx + 8]
je 0x473bb9
mov ecx, dword [eax + 0x1c]
add eax, 0xc
cmp dword [eax + 0x14], 0x10
jb 0x473b9e
mov eax, dword [eax]
push ecx
mov ecx, dword [esi + 0x10]
push eax
push ecx
push 0
mov ecx, esi
call fcn.00407a90
test eax, eax
js 0x473bb9
lea eax, [ebp - 0xcc]
jmp 0x473bc8
mov edx, dword [ebx + 8]
mov dword [ebp - 0xdc], edx
lea eax, [ebp - 0xdc]
cmp dword [ebp - 0x18], 0x10
mov esi, dword [eax]
mov byte [ebp - 4], 3
jb 0x473be0
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0053ed60
add esp, 4
xor edi, edi
mov eax, 0xf
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], edi
mov byte [ebp - 0x2c], 0
cmp esi, dword [ebx + 8]
je 0x473caa
cmp dword [esi + 0x38], edi
jne 0x473c08
mov byte [ebp - 0xc5], 1
jmp 0x473c35
push 0xffffffffffffffff
push edi
lea ecx, [ebp - 0x9c]
push ecx
lea ecx, [ebp - 0x48]
call fcn.004077b1
push 0x3a
push 1
lea ecx, [ebp - 0x48]
call fcn.00405ea2
push 0xffffffffffffffff
lea eax, [esi + 0x28]
push edi
push eax
lea ecx, [ebp - 0x48]
call fcn.0040373d
cmp byte [ebp - 0xc5], 0
mov byte [ebp - 0xb9], 1
jne 0x4741b2
mov ebx, dword [ebp - 0xc4]
lea ecx, [ebp - 0x9c]
push ecx
lea edx, [ebp - 0x2c]
push edx
call fcn.004031e8
add esp, 8
push eax
lea eax, [ebp - 0x100]
push eax
lea ecx, [ebx + 0x3c]
mov byte [ebp - 4], 0xe
call fcn.0040246e
mov ecx, dword [ebp - 0xfc]
mov edx, dword [ebp - 0x100]
push ecx
push edx
lea eax, [ebp - 0x104]
push eax
lea ecx, [ebx + 0x3c]
call fcn.00406f3c
cmp dword [ebp - 0x18], 0x10
mov byte [ebp - 4], 3
jb 0x4741b2
mov ecx, dword [ebp - 0x2c]
push ecx
jmp 0x4741aa
cmp dword [ebx + 0x8c], edi
je 0x473d25
push 6
push 0x5b4578
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], edi
mov byte [ebp - 0x2c], 0
call fcn.00402a36
or dword [ebp - 0xc0], 4
lea edx, [ebp - 0x9c]
push edx
lea eax, [ebp - 0x64]
push eax
mov byte [ebp - 4], 0xc
call fcn.004031e8
add esp, 8
or dword [ebp - 0xc0], 8
mov ecx, dword [ebp - 0x2c]
mov esi, 0x10
mov dword [ebp - 4], 0xd
cmp dword [ebp - 0x18], esi
jae 0x473d07
lea ecx, [ebp - 0x2c]
mov edx, dword [ebp - 0x1c]
push edx
push ecx
mov ecx, dword [eax + 0x10]
push ecx
push edi
mov ecx, eax
call fcn.00407a90
test eax, eax
jne 0x473d2a
mov byte [ebp - 0xcd], 1
jmp 0x473d31
mov esi, 0x10
mov byte [ebp - 0xcd], 0
test byte [ebp - 0xc0], 8
je 0x473d60
and dword [ebp - 0xc0], 0xfffffff7
cmp dword [ebp - 0x50], esi
jb 0x473d52
mov edx, dword [ebp - 0x64]
push edx
call fcn.0053ed60
add esp, 4
mov dword [ebp - 0x50], 0xf
mov dword [ebp - 0x54], edi
mov byte [ebp - 0x64], 0
test byte [ebp - 0xc0], 4
mov dword [ebp - 4], 3
je 0x473d88
and dword [ebp - 0xc0], 0xfffffffb
cmp dword [ebp - 0x18], esi
jb 0x473d88
mov eax, dword [ebp - 0x2c]
push eax
call fcn.0053ed60
add esp, 4
cmp byte [ebp - 0xcd], 0
je 0x473c4f
cmp dword [ebp - 0x70], 0
je 0x473dad
cmp dword [ebp - 0x6c], 0x10
mov eax, dword [ebp - 0x80]
jae 0x473da7
lea eax, [ebp - 0x80]
cmp byte [eax - 1], 0x3b
je 0x473dbc
push 2
push 0x5b4580
lea ecx, [ebp - 0x80]
call fcn.00403dd2
push 0xffffffffffffffff
push 0
lea ecx, [ebp - 0x9c]
push ecx
lea ecx, [ebp - 0x48]
call fcn.004077b1
push 0x3a
push 1
lea ecx, [ebp - 0x48]
call fcn.00405ea2
push 0xffffffffffffffff
push 0
lea edx, [ebp - 0x80]
push edx
lea ecx, [ebp - 0x48]
call fcn.0040373d
push 0xffffffffffffffff
push 0
lea eax, [ebx + 0x7c]
push eax
lea ecx, [ebp - 0x48]
call fcn.0040373d
mov byte [ebp - 0xb9], 1
mov byte [ebx + 0x98], 1
jmp 0x473c4f
cmp byte [ebx + 0x78], 0
je 0x4741b2
mov edx, dword [ebp - 0xc4]
cmp dword [edx + 0x6c], 0
je 0x4741b2
mov eax, 0xf
xor edi, edi
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], edi
mov byte [ebp - 0x2c], 0
push 0xffffffffffffffff
mov byte [ebp - 4], al
mov dword [ebp - 0x50], eax
push edi
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x54], edi
mov byte [ebp - 0x64], 0
call fcn.004077b1
cmp dword [ebp - 0x34], 0x10
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0x10
jae 0x473e65
lea eax, [ebp - 0x48]
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp - 0x48]
mov edx, 0x10
cmp dword [ebp - 0x34], edx
jae 0x473e7b
lea eax, [ebp - 0x48]
add eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0xcc]
cmp ecx, eax
je 0x473faa
mov bl, byte [ecx]
cmp bl, 0x20
je 0x473faa
or eax, 0xffffffff
sub eax, edi
cmp eax, 1
jbe 0x474368
lea esi, [edi + 1]
cmp esi, 0xfffffffe
ja 0x474368
mov eax, dword [ebp - 0x18]
cmp eax, esi
jae 0x473ec9
push edi
push esi
lea ecx, [ebp - 0x2c]
call fcn.0040265d
mov edx, 0x10
jmp 0x473edd
test esi, esi
jne 0x473ee2
cmp eax, edx
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], esi
jae 0x473eda
lea eax, [ebp - 0x2c]
mov byte [eax], 0
mov edi, dword [ebp - 0x1c]
test esi, esi
setne al
test al, al
je 0x473f0c
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x18], edx
jae 0x473ef4
lea eax, [ebp - 0x2c]
mov byte [eax + edi], bl
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], esi
cmp dword [ebp - 0x18], edx
jae 0x473f05
lea eax, [ebp - 0x2c]
mov byte [esi + eax], 0
mov edi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x54]
inc dword [ebp - 0xcc]
dec ecx
push ecx
push 1
lea edx, [ebp - 0xb8]
push edx
lea ecx, [ebp - 0x64]
call fcn.004075c2
mov esi, eax
lea eax, [ebp - 0x64]
cmp eax, esi
je 0x473f85
cmp dword [ebp - 0x50], 0x10
jb 0x473f43
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.0053ed60
add esp, 4
xor ebx, ebx
mov dword [ebp - 0x50], 0xf
mov dword [ebp - 0x54], ebx
mov byte [ebp - 0x64], bl
cmp dword [esi + 0x14], 0x10
jae 0x473f6c
mov eax, dword [esi + 0x10]
inc eax
push eax
lea edx, [ebp - 0x64]
push esi
push edx
call fcn.0053f450
add esp, 0xc
jmp 0x473f73
mov eax, dword [esi]
mov dword [ebp - 0x64], eax
mov dword [esi], ebx
mov ecx, dword [esi + 0x10]
mov dword [ebp - 0x54], ecx
mov edx, dword [esi + 0x14]
mov dword [ebp - 0x50], edx
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
cmp dword [ebp - 0xa4], 0x10
mov byte [ebp - 4], 0x10
jb 0x473e6b
mov eax, dword [ebp - 0xb8]
push eax
call fcn.0053ed60
add esp, 4
jmp 0x473e6b
mov ebx, dword [ebp - 0xcc]
mov eax, dword [ebp - 0x48]
mov ecx, 0x10
cmp dword [ebp - 0x34], ecx
jae 0x473fc0
lea eax, [ebp - 0x48]
mov edx, dword [ebp - 0x38]
add eax, edx
cmp ebx, eax
je 0x4740e7
cmp byte [ebx], 0x20
jne 0x4740e7
or eax, 0xffffffff
sub eax, edi
cmp eax, 1
jbe 0x474368
lea esi, [edi + 1]
cmp esi, 0xfffffffe
ja 0x474368
mov eax, dword [ebp - 0x18]
cmp eax, esi
jae 0x474008
push edi
push esi
lea ecx, [ebp - 0x2c]
call fcn.0040265d
mov ecx, 0x10
jmp 0x47401c
test esi, esi
jne 0x474021
cmp eax, ecx
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], esi
jae 0x474019
lea eax, [ebp - 0x2c]
mov byte [eax], 0
mov edi, dword [ebp - 0x1c]
test esi, esi
setne al
test al, al
je 0x47404c
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x18], ecx
jae 0x474033
lea eax, [ebp - 0x2c]
mov byte [eax + edi], 0x20
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], esi
cmp dword [ebp - 0x18], ecx
jae 0x474045
lea eax, [ebp - 0x2c]
mov byte [eax + esi], 0
mov edi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x54]
dec ecx
push ecx
push 1
lea edx, [ebp - 0xb8]
push edx
lea ecx, [ebp - 0x64]
inc ebx
call fcn.004075c2
mov esi, eax
lea eax, [ebp - 0x64]
cmp eax, esi
je 0x4740c2
cmp dword [ebp - 0x50], 0x10
jb 0x47407e
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.0053ed60
add esp, 4
xor eax, eax
mov dword [ebp - 0x50], 0xf
mov dword [ebp - 0x54], eax
mov byte [ebp - 0x64], al
cmp dword [esi + 0x14], 0x10
jae 0x4740a9
mov eax, dword [esi + 0x10]
inc eax
push eax
lea edx, [ebp - 0x64]
push esi
push edx
call fcn.0053f450
add esp, 0xc
xor eax, eax
jmp 0x4740b0
mov ecx, dword [esi]
mov dword [ebp - 0x64], ecx
mov dword [esi], eax
mov edx, dword [esi + 0x10]
mov dword [ebp - 0x54], edx
mov ecx, dword [esi + 0x14]
mov dword [ebp - 0x50], ecx
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], eax
cmp dword [ebp - 0xa4], 0x10
mov byte [ebp - 4], 0x10
jb 0x473fb0
mov edx, dword [ebp - 0xb8]
push edx
call fcn.0053ed60
add esp, 4
jmp 0x473fb0
mov eax, dword [ebp - 0x64]
cmp dword [ebp - 0x50], ecx
jae 0x4740f2
lea eax, [ebp - 0x64]
push 7
push 0x5b4584
push eax
call fcn.00542ab4
add esp, 0xc
mov esi, 0x10
test eax, eax
je 0x47417a
mov eax, dword [ebp - 0x64]
cmp dword [ebp - 0x50], esi
jae 0x474116
lea eax, [ebp - 0x64]
push 8
push 0x5b458c
push eax
call fcn.00542ab4
add esp, 0xc
test eax, eax
je 0x47417a
mov eax, dword [ebp - 0xc4]
push 0xffffffffffffffff
push 0
add eax, 0x5c
push eax
lea ecx, [ebp - 0x2c]
call fcn.0040373d
mov eax, dword [ebp - 0x48]
cmp dword [ebp - 0x34], esi
jae 0x47414b
lea eax, [ebp - 0x48]
add eax, dword [ebp - 0x38]
cmp ebx, eax
je 0x474163
movzx edx, byte [ebx]
push edx
push 1
lea ecx, [ebp - 0x2c]
call fcn.00405ea2
inc ebx
jmp 0x474140
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x48]
call fcn.004077b1
mov byte [ebp - 0xb9], 1
cmp dword [ebp - 0x50], esi
jb 0x47418b
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.0053ed60
add esp, 4
mov dword [ebp - 0x50], 0xf
mov dword [ebp - 0x54], 0
mov byte [ebp - 0x64], 0
mov byte [ebp - 4], 3
cmp dword [ebp - 0x18], esi
jb 0x4741b2
mov edx, dword [ebp - 0x2c]
push edx
call fcn.0053ed60
add esp, 4
mov edi, dword [ebp - 0xc4]
cmp byte [edi + 0x99], 0
mov byte [edi + 0x78], 0
jne 0x4741cb
inc dword [ebp - 0xd4]
cmp byte [ebp - 0xc5], 0
jne 0x474291
cmp byte [edi + 0x28], 0
je 0x47423e
cmp byte [edi + 0x98], 0
jne 0x47423e
cmp dword [edi + 0x8c], 0
je 0x47423e
push 8
push str.Cookie:
lea ecx, [ebp - 0x48]
call fcn.00403dd2
push 0xffffffffffffffff
push 0
lea eax, [edi + 0x7c]
push eax
lea ecx, [ebp - 0x48]
call fcn.0040373d
cmp byte [edi + 0x99], 0
lea ecx, [ebp - 0x48]
jne 0x474224
push 2
push 0x5b45a4
jmp 0x47422b
push 1
push 0x5b45a8
call fcn.00403dd2
mov byte [edi + 0x98], 1
mov byte [ebp - 0xb9], 1
cmp byte [edi + 0x99], 0
lea ecx, [ebp - 0x48]
jne 0x474253
push 2
push 0x5b45ac
jmp 0x47425a
push 1
push 0x5b45b0
call fcn.00403dd2
xor esi, esi
lea ebx, [esi + 0x10]
cmp dword [ebp - 0x38], esi
jbe 0x474296
lea esp, [esp]
mov eax, dword [ebp - 0x48]
cmp dword [ebp - 0x34], ebx
jae 0x47427b
lea eax, [ebp - 0x48]
add eax, esi
push eax
lea ecx, [ebp - 0xf8]
call fcn.00404eee
inc esi
cmp esi, dword [ebp - 0x38]
jb 0x474270
jmp 0x474296
mov ebx, 0x10
cmp byte [edi + 0x28], 0
jne 0x4742f2
push 0
push 0x5b44d2
lea ecx, [ebp - 0x48]
call fcn.00402a36
cmp dword [ebp - 0x6c], ebx
jb 0x4742bc
mov ecx, dword [ebp - 0x80]
push ecx
call fcn.0053ed60
add esp, 4
mov dword [ebp - 0x6c], 0xf
mov dword [ebp - 0x70], 0
mov byte [ebp - 0x80], 0
mov byte [ebp - 4], 1
cmp dword [ebp - 0x88], ebx
jb 0x4735ca
mov edx, dword [ebp - 0x9c]
push edx
call fcn.0053ed60
add esp, 4
jmp 0x4735ca
mov esi, dword [ebp - 0xd4]
cmp esi, dword [edi + 0x1c]
jae 0x474312
lea ecx, [ecx]
push esi
lea ecx, [ebp - 0xf8]
call fcn.00404eee
inc esi
cmp esi, dword [edi + 0x1c]
jb 0x474300
push 0
push 0x5b44d1
lea ecx, [ebp - 0x48]
call fcn.00402a36
cmp dword [ebp - 0x6c], ebx
jb 0x474332
mov eax, dword [ebp - 0x80]
push eax
call fcn.0053ed60
add esp, 4
mov dword [ebp - 0x6c], 0xf
mov dword [ebp - 0x70], 0
mov byte [ebp - 0x80], 0
mov byte [ebp - 4], 1
cmp dword [ebp - 0x88], ebx
jb 0x4735e2
mov ecx, dword [ebp - 0x9c]
push ecx
call fcn.0053ed60
add esp, 4
jmp 0x4735e2
push str.string_too_long
call fcn.0053e79c
cmp dword [ebp - 0x34], 0x10
jb 0x474384
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.0053ed60
add esp, 4
mov eax, dword [ebp - 0xf8]
mov dword [ebp - 0x34], 0xf
mov dword [ebp - 0x38], 0
mov byte [ebp - 0x48], 0
test eax, eax
je 0x4743a9
push eax
call fcn.0053ed60
add esp, 4
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0053fd20
mov esp, ebp
pop ebp
ret 0x10