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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x54]
cmp eax, dword [ecx + 8]
jbe 0x6d4021
sub esp, 0xd4
mov dword [esp + 0xec], 0
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0
lea eax, [0x84d280]
mov dword [esp], eax
call fcn.00409d90
lea eax, [esp + 0x18]
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0xe8]
mov edx, dword [ecx + 0x14]
mov dword [esp + 0x30], edx
mov ebx, dword [ecx + 0x10]
mov dword [esp + 0x2c], ebx
mov ebp, dword [ecx + 0xc]
mov dword [esp + 0x54], ebp
mov esi, dword [esp + 4]
mov dword [esp + 0x58], esi
xor edi, edi
xor edi, edi
mov dword [esp + 0x28], edi
jmp 0x6d3acb
dec ebx
mov edx, edi
cmp ebx, ecx
jl 0x6d3db8
cmp ebx, esi
jae 0x6d4013
mov edi, edx
movzx edx, byte [ebp + ebx]
cmp dl, 0x3c
jne 0x6d38f8
mov dword [esp + 0x48], ebx
mov edx, dword [esp + 0x28]
jmp 0x6d3926
inc ecx
mov ebp, dword [esp + 0x54]
cmp ecx, ebx
jge 0x6d3a52
cmp ecx, esi
jae 0x6d400c
movzx ebp, byte [ebp + ecx]
xchg ebp, eax
cmp al, 0x3c
xchg ebp, eax
jne 0x6d3921
mov dword [esp + 0x44], ecx
mov dword [esp + 0x40], edx
mov eax, dword [esp + 0x30]
sub eax, ecx
mov ebx, eax
neg eax
sar eax, 0x1f
and eax, ecx
mov ebp, dword [esp + 0x54]
add eax, ebp
mov dword [esp], eax
sub esi, ecx
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
call fcn.004cc260
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xc]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov eax, dword [0xc5510c]
mov ecx, dword [str.__DOCTYPE]
mov edx, dword [0xc55110]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
call fcn.004cbe90
movzx eax, byte [esp + 0x18]
test al, al
je 0x6d39d1
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x48]
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x3c]
jmp 0x6d3921
mov eax, dword [esp + 0x44]
test eax, eax
jl 0x6d4005
mov ecx, dword [esp + 0x40]
cmp ecx, eax
ja 0x6d4005
mov edx, dword [esp + 0x58]
mov dword [esp], edx
mov ebx, dword [esp + 0x30]
sub ebx, ecx
mov esi, ebx
neg ebx
sar ebx, 0x1f
and ebx, ecx
mov edi, dword [esp + 0x54]
add ebx, edi
mov dword [esp + 4], ebx
sub eax, ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], esi
call fcn.004ca6a0
mov eax, dword [esp + 0x58]
mov dword [esp], eax
lea ecx, [0x896f0b]
mov dword [esp + 4], ecx
mov dword [esp + 8], 4
call fcn.004ca790
mov ecx, dword [esp + 0x44]
lea edx, [ecx + 1]
mov eax, dword [esp + 0x34]
mov ebx, dword [esp + 0x48]
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x3c]
jmp 0x6d3921
movzx ecx, byte [esp + 0xdc]
movzx ebx, byte [esp + 0x6c]
cmp cl, bl
je 0x6d3a79
cmp bl, 5
jne 0x6d3d9b
movzx ecx, byte [esp + 0x6d]
test cl, cl
je 0x6d3d30
mov ecx, dword [esp + 0x38]
cmp ecx, edi
jne 0x6d3a98
movzx ebx, byte [esp + 0xdc]
mov eax, ecx
movzx ecx, byte [esp + 0x6c]
cmp bl, cl
je 0x6d3b9d
lea edi, [esp + 0xdc]
lea esi, [esp + 0x6c]
call fcn.0044ce52
mov ecx, dword [esp + 0x30]
mov ebx, dword [esp + 0x2c]
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0xe8]
mov esi, dword [esp + 0x58]
mov edi, dword [esp + 0x3c]
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x30]
cmp edi, ebx
je 0x6d3ef9
ja 0x6d401a
mov dword [esp + 0x38], edi
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0xb0], 0
mov eax, edi
mov edi, esp
lea esi, [esp + 0xdc]
call fcn.0044ce52
sub edx, eax
mov dword [esp + 0x50], edx
mov esi, edx
neg edx
sar edx, 0x1f
and edx, eax
add edx, ebp
mov dword [esp + 0x5c], edx
mov dword [esp + 0xc], edx
sub ebx, eax
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], esi
call fcn.006d4030
lea edi, [esp + 0xa8]
mov esi, dword [esp + 0x60]
call fcn.0044ce52
mov eax, dword [esp + 0x24]
mov dword [esp + 0x34], eax
lea edi, [esp + 0x6c]
lea esi, [esp + 0xa8]
call fcn.0044ce52
mov ecx, dword [esp + 0x38]
lea edx, [ecx + eax]
mov dword [esp + 0x3c], edx
movzx ebx, byte [esp + 0xdc]
test bl, bl
jne 0x6d3dd2
movzx ebp, byte [esp + 0x6c]
xchg ebp, eax
cmp al, bl
xchg ebp, eax
je 0x6d3dc1
lea ebx, [ecx + eax - 1]
mov ebp, dword [esp + 0x54]
mov esi, dword [esp + 0x2c]
jmp 0x6d38fb
lea edi, [esp + 0x9c]
lea esi, [esp + 0xdc]
call fcn.0044ce52
lea edi, [esp + 0x90]
lea esi, [esp + 0x6c]
call fcn.0044ce52
test eax, eax
jl 0x6d3ff0
mov dword [esp + 0x84], ebp
mov dword [esp + 0x88], eax
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x8c], ecx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x78], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x80], ecx
lea edi, [esp + 0xb4]
xor eax, eax
call fcn.0044c958
lea ecx, [0x873e60]
mov dword [esp], ecx
lea edx, [esp + 0x9c]
mov dword [esp + 4], edx
call fcn.00407360
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xb8], edx
lea ecx, [0x873e60]
mov dword [esp], ecx
lea ecx, [esp + 0x90]
mov dword [esp + 4], ecx
call fcn.00407360
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov dword [esp + 0xbc], edx
mov dword [esp + 0xc0], ecx
lea ecx, [0x7e9560]
mov dword [esp], ecx
lea edx, [esp + 0x84]
mov dword [esp + 4], edx
call fcn.004075a0
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov dword [esp + 0xc4], edx
mov dword [esp + 0xc8], ecx
lea ecx, [0x7e9560]
mov dword [esp], ecx
lea ecx, [esp + 0x78]
mov dword [esp + 4], ecx
call fcn.004075a0
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov dword [esp + 0xcc], edx
mov dword [esp + 0xd0], ecx
lea ecx, [0x8ac64b]
mov dword [esp], ecx
mov dword [esp + 4], 0x25
lea ecx, [esp + 0xb4]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 4
mov dword [esp + 0x10], 4
call fcn.004b0290
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], ecx
lea ecx, [0x80a3e0]
mov dword [esp], ecx
lea ecx, [esp + 0x64]
mov dword [esp + 4], ecx
call fcn.00407520
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.00427650
ud2
mov ecx, dword [esp + 0x38]
lea esi, [ecx + eax - 2]
cmp bl, 5
jne 0x6d3d97
lea eax, [ecx + eax - 4]
test eax, eax
jl 0x6d3ff7
cmp edx, eax
ja 0x6d3ff7
mov ebx, dword [esp + 0x30]
cmp eax, ebx
ja 0x6d3ff7
mov ecx, dword [esp + 0x58]
mov dword [esp], ecx
sub ebx, edx
mov edi, ebx
neg ebx
sar ebx, 0x1f
and ebx, edx
add ebx, ebp
mov dword [esp + 4], ebx
sub eax, edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], edi
call fcn.004ca6a0
mov ebp, dword [esp + 0x54]
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x3c]
mov edx, edi
jmp 0x6d3a79
mov eax, esi
jmp 0x6d3d41
lea ecx, [ebx - 0xe]
cmp cl, 1
jbe 0x6d3a6c
lea ecx, [ebx - 0x16]
cmp cl, 1
jbe 0x6d3a6c
jmp 0x6d3a79
mov edi, edx
mov ebx, edi
jmp 0x6d3917
mov ebp, dword [esp + 0x54]
mov esi, dword [esp + 0x2c]
mov edi, edx
mov ebx, edi
jmp 0x6d3917
cmp bl, 6
je 0x6d3b7d
cmp bl, 5
jne 0x6d3ed2
movzx ebp, byte [esp + 0xdd]
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x6d3ec7
cmp bl, 0xe
je 0x6d3e30
cmp bl, 0x16
je 0x6d3e11
mov ebx, edx
mov ebp, dword [esp + 0x54]
mov esi, dword [esp + 0x2c]
mov edi, ebx
jmp 0x6d3a52
mov eax, dword [esp + 0x58]
mov dword [esp], eax
mov byte [esp + 4], 0x20
call fcn.004cac10
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
jmp 0x6d3e00
test edx, edx
jl 0x6d3ffe
mov ebx, dword [esp + 0x28]
cmp ebx, edx
ja 0x6d3ffe
mov ebp, dword [esp + 0x30]
cmp edx, ebp
ja 0x6d3ffe
sub ebp, ebx
mov ecx, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, ebx
mov esi, dword [esp + 0x54]
add ebp, esi
mov dword [esp], ebp
sub edx, ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
lea ecx, [0x89a400]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 8
call fcn.004cb870
movzx eax, byte [esp + 0x14]
test al, al
je 0x6d3eb4
mov eax, dword [esp + 0x58]
mov dword [esp], eax
mov byte [esp + 4], 0xa
call fcn.004cac10
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
jmp 0x6d3e00
mov eax, dword [esp + 0x58]
mov dword [esp], eax
mov byte [esp + 4], 0x20
call fcn.004cac10
jmp 0x6d3ea3
mov ebx, edx
mov edx, dword [esp + 0x28]
jmp 0x6d3e02
lea ebp, [ebx - 0xe]
xchg ebp, eax
cmp al, 1
xchg ebp, eax
jbe 0x6d3de4
lea ebp, [ebx - 0x16]
xchg ebp, eax
cmp al, 1
xchg ebp, eax
jbe 0x6d3de4
mov ebx, edx
mov edx, dword [esp + 0x28]
jmp 0x6d3e02
mov eax, dword [esp + 0x28]
test eax, eax
je 0x6d3fab
movzx edx, byte [esp + 0xdc]
cmp dl, 0x18
je 0x6d3fab
cmp dl, 5
jne 0x6d3fc5
movzx edx, byte [esp + 0xdd]
test dl, dl
je 0x6d3f63
mov edx, dword [ecx + 0x10]
mov ebx, dword [ecx + 0xc]
mov ebp, dword [ecx + 0x14]
cmp eax, edx
ja 0x6d3fe9
mov dword [esp], esi
sub ebp, eax
mov ecx, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, eax
add ebx, ebp
mov dword [esp + 4], ebx
sub edx, eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
call fcn.004ca6a0
mov eax, dword [esp + 0x58]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
mov ebx, dword [eax + 0xc]
mov eax, dword [eax + 8]
cmp ebx, ecx
ja 0x6d3fe2
mov ebp, dword [esp + 0xd8]
mov dword [esp], ebp
mov ebp, dword [esp + 0xe8]
mov dword [esp + 4], ebp
sub eax, ebx
mov ebp, eax
neg eax
sar eax, 0x1f
and eax, ebx
add eax, edx
mov dword [esp + 8], eax
sub ecx, ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call fcn.006d4900
lea edi, [esp + 0xec]
lea esi, [esp + 0xdc]
call fcn.0044ce52
add esp, 0xd4
ret
lea ebx, [edx - 0xe]
cmp bl, 1
jbe 0x6d3f1f
add edx, 0xffffffea
cmp dl, 1
jbe 0x6d3f1f
jmp 0x6d3f2b
call fcn.00426870
ud2
call fcn.00426870
ud2
call fcn.00426870
ud2
call fcn.00426870
ud2
call fcn.00426870
ud2
call fcn.00426870
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426870
ud2
call fcn.0044b100
jmp fcn.006d3870