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

Disassembly:
sub esp, 0x220
mov eax, dword [0x568cb8]
xor eax, esp
mov dword [esp + 0x21c], eax
mov eax, dword [esp + 0x22c]
mov edx, dword [esp + 0x234]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x238]
mov dword [esp + 8], eax
mov eax, dword [str.00000001]
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x23c]
mov dword [esp + 0x20], eax
movzx eax, byte [0x5324bc]
mov dword [esp + 4], edx
mov edx, dword [0x5324b8]
mov ecx, dword [esp + 0x228]
mov dword [esp + 0x24], edx
mov edx, dword [str.AUTHENTICATE]
mov byte [esp + 0x28], al
mov eax, dword [0x5324a8]
push ebx
mov ebx, dword [esp + 0x228]
mov dword [esp + 0x40], edx
mov edx, dword [0x5324ac]
mov dword [esp + 0x44], eax
movzx eax, byte [0x5324b0]
push ebp
mov ebp, dword [esp + 0x238]
mov dword [esp + 0x4c], edx
mov edx, dword [str.auth]
push 0x40
mov byte [esp + 0x54], al
movzx eax, byte [0x5323b0]
mov dword [esp + 0x24], edx
lea edx, [esp + 0x1e8]
push edx
push 0x40
mov byte [esp + 0x30], al
lea eax, [esp + 0x1b0]
push eax
push 0x80
lea edx, [esp + 0x138]
push edx
lea eax, [esp + 0x90]
push 0x40
push eax
mov dword [esp + 0x28], ebx
call fcn.005045e0
add esp, 0x20
test eax, eax
jne 0x504ccd
mov edx, str.md5_sess
lea ecx, [esp + 0x1a4]
lea ecx, [ecx]
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x504830
test al, al
je 0x50482c
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x504830
add ecx, 2
add edx, 2
test al, al
jne 0x504810
xor eax, eax
jmp 0x504835
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x504855
pop ebp
mov eax, 0x3d
pop ebx
mov ecx, dword [esp + 0x21c]
xor ecx, esp
call fcn.004b8307
add esp, 0x220
ret
push edi
lea edi, [esp + 0x1c]
lea eax, [esp + 0x1e8]
call fcn.00504250
test eax, eax
jne 0x504ccc
test byte [esp + 0x1c], 1
jne 0x504892
pop edi
pop ebp
mov eax, 0x3d
pop ebx
mov ecx, dword [esp + 0x21c]
xor ecx, esp
call fcn.004b8307
add esp, 0x220
ret
push esi
push ebx
call fcn.004e9f60
push ebx
mov esi, eax
call fcn.004e9f60
push ebx
mov edi, eax
call fcn.004e9f60
mov ecx, dword [esp + 0x1c]
push ecx
mov ebx, eax
call fcn.004e9f60
push eax
push ebx
push edi
push esi
push str._08x_08x_08x_08x
lea edx, [esp + 0x80]
push 0x21
push edx
call fcn.004e91e0
push 0x532684
call fcn.00506640
mov esi, eax
add esp, 0x30
test esi, esi
je 0x504b1c
mov ebx, dword [esp + 0x1c]
mov eax, ebx
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x5048f0
sub eax, edx
push eax
call fcn.004fd090
push eax
push ebx
push esi
call fcn.00506690
push 1
push 0x52d128
push esi
call fcn.00506690
lea eax, [esp + 0x148]
add esp, 0x1c
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x504921
sub eax, ecx
push eax
call fcn.004fd090
push eax
lea eax, [esp + 0x134]
push eax
push esi
call fcn.00506690
push 1
push 0x52d128
push esi
call fcn.00506690
mov eax, ebp
add esp, 0x1c
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x504954
sub eax, ecx
push eax
call fcn.004fd090
push eax
push ebp
push esi
call fcn.00506690
lea ecx, [esp + 0x4c]
push ecx
push esi
call fcn.005066b0
push 0x532684
call fcn.00506640
mov esi, eax
add esp, 0x1c
test esi, esi
je 0x504b1c
push 0x10
lea edx, [esp + 0x40]
push edx
push esi
call fcn.00506690
push 1
push 0x52d128
push esi
call fcn.00506690
lea eax, [esp + 0x98]
add esp, 0x18
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x5049b4
sub eax, edx
push eax
call fcn.004fd090
push eax
lea eax, [esp + 0x88]
push eax
push esi
call fcn.00506690
push 1
push 0x52d128
push esi
call fcn.00506690
lea eax, [esp + 0x78]
add esp, 0x1c
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x5049f0
sub eax, edx
push eax
call fcn.004fd090
push eax
lea ecx, [esp + 0x64]
push ecx
push esi
call fcn.00506690
lea edx, [esp + 0x4c]
push edx
push esi
call fcn.005066b0
add esp, 0x18
xor esi, esi
lea edi, [esp + 0x108]
movzx eax, byte [esp + esi + 0x3c]
push eax
push str._02x
push 3
push edi
call fcn.004e91e0
inc esi
add esp, 0x10
add edi, 2
cmp esi, 0x10
jb 0x504a22
mov edx, dword [esp + 0x24]
lea ecx, [esp + 0x12c]
push ecx
push edx
call fcn.00504300
mov ebp, eax
add esp, 8
test ebp, ebp
je 0x504b1c
push 0x532684
call fcn.00506640
mov esi, eax
add esp, 4
test esi, esi
je 0x504b12
lea eax, [esp + 0x4c]
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x504a80
sub eax, edx
push eax
call fcn.004fd090
push eax
lea eax, [esp + 0x54]
push eax
push esi
call fcn.00506690
push 1
push 0x52d128
push esi
call fcn.00506690
mov eax, ebp
add esp, 0x1c
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x504ab0
sub eax, ecx
push eax
call fcn.004fd090
push eax
push ebp
push esi
call fcn.00506690
lea ecx, [esp + 0x4c]
push ecx
push esi
call fcn.005066b0
add esp, 0x18
xor esi, esi
lea edi, [esp + 0xe4]
mov edi, edi
movzx edx, byte [esp + esi + 0x3c]
push edx
push str._02x
push 3
push edi
call fcn.004e91e0
inc esi
add esp, 0x10
add edi, 2
cmp esi, 0x10
jb 0x504ae0
push 0x532684
call fcn.00506640
mov esi, eax
add esp, 4
test esi, esi
jne 0x504b26
push ebp
call dword [0x56a194]
add esp, 4
mov eax, 0x1b
jmp 0x504ccb
push 0x20
lea eax, [esp + 0x10c]
push eax
push esi
call fcn.00506690
push 1
push 0x52d128
push esi
call fcn.00506690
lea eax, [esp + 0x98]
add esp, 0x18
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x504b50
sub eax, edx
push eax
call fcn.004fd090
push eax
lea ecx, [esp + 0x88]
push ecx
push esi
call fcn.00506690
push 1
push 0x52d128
push esi
call fcn.00506690
lea eax, [esp + 0x4c]
add esp, 0x1c
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x504b85
sub eax, ecx
push eax
call fcn.004fd090
push eax
lea edx, [esp + 0x38]
push edx
push esi
call fcn.00506690
push 1
push 0x52d128
push esi
call fcn.00506690
lea eax, [esp + 0x78]
add esp, 0x1c
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x504bb7
sub eax, ecx
push eax
call fcn.004fd090
push eax
lea eax, [esp + 0x64]
push eax
push esi
call fcn.00506690
push 1
push 0x52d128
push esi
call fcn.00506690
lea eax, [esp + 0x44]
add esp, 0x1c
lea ecx, [eax + 1]
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x504bf0
sub eax, ecx
push eax
call fcn.004fd090
push eax
lea ecx, [esp + 0x30]
push ecx
push esi
call fcn.00506690
push 1
push 0x52d128
push esi
call fcn.00506690
push 0x20
lea edx, [esp + 0x104]
push edx
push esi
call fcn.00506690
lea eax, [esp + 0x64]
push eax
push esi
call fcn.005066b0
add esp, 0x30
xor esi, esi
lea edi, [esp + 0xc0]
nop
movzx ecx, byte [esp + esi + 0x3c]
push ecx
push str._02x
push 3
push edi
call fcn.004e91e0
inc esi
add esp, 0x10
add edi, 2
cmp esi, 0x10
jb 0x504c40
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0xc4]
push eax
push ebp
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x6c]
push edx
lea eax, [esp + 0x94]
push eax
lea ecx, [esp + 0x144]
push ecx
push ebx
push str.username__s__realm__s__nonce__s__cnonce__s__nc__s__digest_uri__s__response_s_qop_s
call fcn.004e9bd0
push ebp
mov esi, eax
call dword [0x56a194]
add esp, 0x28
test esi, esi
je 0x504b1c
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
push edx
push eax
push 0
push esi
push ecx
call fcn.00507900
push esi
mov edi, eax
call dword [0x56a194]
add esp, 0x18
mov eax, edi
pop esi
pop edi
mov ecx, dword [esp + 0x224]
pop ebp
pop ebx
xor ecx, esp
call fcn.004b8307
add esp, 0x220
ret