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

Disassembly:
push 0xffffffffffffffff
push 0x45d020
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x78
mov eax, dword [0x4774f0]
push ebx
push ebp
push esi
xor ebx, ebx
push edi
mov edi, ecx
xor esi, esi
mov dword [esp + 0x84], eax
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
push 8
mov ebp, 0xf
push str.tag_name
lea ecx, [esp + 0x70]
mov dword [esp + 0x98], ebx
mov dword [esp + 0x88], ebp
mov dword [esp + 0x84], ebx
mov byte [esp + 0x74], bl
call fcn.00403690
mov byte [esp + 0x90], 1
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], ebx
mov eax, dword [edi + 0x10]
cmp eax, ebx
jne 0x413fab
xor eax, eax
jmp 0x413fc0
mov ecx, dword [edi + 0x14]
sub ecx, eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [esp + 0x18], eax
jge 0x414134
push 8
push str.tag_name
lea ecx, [esp + 0x38]
mov dword [esp + 0x50], ebp
mov dword [esp + 0x4c], ebx
mov byte [esp + 0x3c], bl
call fcn.00403690
mov eax, dword [edi + 0x10]
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x30]
add ecx, eax
push edx
mov byte [esp + 0x94], 2
call fcn.00413e10
mov ecx, dword [esp + 0x9c]
lea esi, [ecx + 1]
jmp 0x414010
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x414010
mov edx, dword [eax + 0x14]
sub ecx, esi
mov ebp, ecx
mov ecx, edx
cmp ecx, edx
jae 0x414024
cmp edx, ebx
je 0x41405a
cmp edx, ebp
mov ecx, edx
jb 0x414030
mov ecx, ebp
cmp dword [eax + 0x18], 0x10
jb 0x41403b
mov eax, dword [eax + 4]
jmp 0x41403e
add eax, 4
mov edi, dword [esp + 0x9c]
mov esi, eax
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x414052
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
mov edi, dword [esp + 0x1c]
jne 0x41406c
cmp edx, ebp
jae 0x414063
or eax, 0xffffffff
jmp 0x41406a
xor eax, eax
cmp edx, ebp
setne al
cmp eax, ebx
mov eax, dword [esp + 0x48]
mov ebp, 0x10
sete byte [esp + 0x13]
cmp eax, ebp
mov byte [esp + 0x90], 1
jb 0x414093
mov eax, dword [esp + 0x34]
push eax
call fcn.00446038
add esp, 4
cmp byte [esp + 0x13], bl
mov esi, 0xf
mov dword [esp + 0x48], esi
mov dword [esp + 0x44], ebx
mov byte [esp + 0x34], bl
je 0x414112
push 9
push str.inner_xml
lea ecx, [esp + 0x54]
mov dword [esp + 0x6c], esi
mov dword [esp + 0x68], ebx
mov byte [esp + 0x58], bl
call fcn.00403690
mov eax, dword [edi + 0x10]
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x4c]
add ecx, eax
push edx
mov byte [esp + 0x94], 3
call fcn.00413e10
push eax
lea ecx, [esp + 0x24]
call fcn.00407c50
cmp dword [esp + 0x64], ebp
mov byte [esp + 0x90], 1
jb 0x414106
mov eax, dword [esp + 0x50]
push eax
call fcn.00446038
add esp, 4
mov dword [esp + 0x64], esi
mov dword [esp + 0x60], ebx
mov byte [esp + 0x50], bl
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x24]
inc ecx
add eax, 0xc
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], eax
mov ebp, 0xf
jmp 0x413fa0
mov edi, dword [esp + 0x98]
lea ecx, [esp + 0x20]
push ecx
mov ecx, edi
call fcn.004137a0
cmp dword [esp + 0x80], 0x10
jb 0x41415e
mov edx, dword [esp + 0x6c]
push edx
call fcn.00446038
add esp, 4
cmp esi, ebx
mov dword [esp + 0x80], ebp
mov dword [esp + 0x7c], ebx
mov byte [esp + 0x6c], bl
je 0x41418f
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x28]
push eax
lea ecx, [esp + 0x24]
push ecx
push edx
push esi
call fcn.00407500
push esi
call fcn.00446038
add esp, 0x14
mov ecx, dword [esp + 0x88]
mov eax, edi
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
mov ecx, dword [esp + 0x78]
pop ebx
call fcn.004305ce
add esp, 0x84
ret 8