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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x58e41b
mov eax, dword fs:[0]
push eax
sub esp, 0x898
mov eax, dword [0x60aecc]
xor eax, esp
mov dword [esp + 0x890], eax
push ebx
push esi
push edi
mov eax, dword [0x60aecc]
xor eax, esp
push eax
lea eax, [esp + 0x8a8]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
mov ebx, ecx
mov eax, dword [ebx]
mov edx, dword [eax + 0x2c]
call edx
push eax
lea eax, [esp + 0x60]
push eax
call fcn.00403460
mov ecx, dword [esi]
mov edx, dword [esi + 4]
lea esi, [ebx + 0x9d8]
mov dword [esp + 0x5c], ecx
mov ecx, dword [esi + 4]
mov dword [esp + 0x60], edx
mov eax, dword [ecx]
mov dword [ecx], ecx
mov ecx, dword [esi + 4]
mov dword [ecx + 4], ecx
add esp, 8
cmp eax, dword [esi + 4]
mov dword [esp + 0x30], esi
mov dword [esi + 8], 0
je 0x4344a2
lea ebx, [ebx]
mov edi, dword [eax]
push eax
call fcn.0055d39b
add esp, 4
cmp edi, dword [esi + 4]
mov eax, edi
jne 0x434490
mov eax, dword [esp + 0x5c]
cmp eax, dword [esp + 0x54]
jne 0x4344f4
mov ecx, dword [esp + 0x60]
cmp ecx, dword [esp + 0x58]
jne 0x4344f4
lea edx, [esp + 0x54]
push edx
lea eax, [esp + 0x68]
push eax
call fcn.00403420
mov ecx, dword [esi + 4]
mov edi, dword [ecx]
mov edx, dword [edi + 4]
add esp, 8
push eax
push edx
push edi
mov ecx, esi
call fcn.004039e0
push 1
mov ecx, esi
mov ebx, eax
call fcn.00404830
mov dword [edi + 4], ebx
mov eax, dword [ebx + 4]
mov dword [eax], ebx
mov al, 1
jmp 0x434b72
lea edi, [esp + 0x84]
lea ecx, [ebx + 0x1c0]
mov dword [esp + 0x14], 0x25
lea esp, [esp]
xor ebx, ebx
xor eax, eax
mov dl, byte [ecx + eax]
neg dl
sbb dl, dl
add eax, 1
and edx, 0xff
cmp eax, 0x38
mov byte [edi + eax - 1], dl
jl 0x434514
add ecx, 0x38
add edi, 0x38
sub dword [esp + 0x14], 1
jne 0x434510
mov eax, dword [esp + 0x60]
mov edx, dword [esp + 0x5c]
lea ecx, [eax*8]
sub ecx, eax
lea eax, [edx + ecx*8]
mov edx, dword [esp + 0x54]
mov byte [esp + eax + 0x84], 1
mov eax, dword [esp + 0x58]
lea ecx, [eax*8]
sub ecx, eax
lea eax, [edx + ecx*8]
lea ecx, [esp + 0x18]
mov byte [esp + eax + 0x84], 0xfe
call fcn.0042e110
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ebx
lea ecx, [eax + 4]
mov dword [esp + 0x2c], ecx
lea edx, [esp + 0x5c]
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
mov ecx, dword [ecx]
push edx
push ecx
push eax
lea ecx, [esp + 0x24]
mov dword [esp + 0x8bc], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
xor edi, edi
mov byte [esp + 0x1e], 0
mov byte [esp + 0x1f], 1
call fcn.0042e180
push 1
lea ecx, [esp + 0x1c]
mov ebx, eax
call fcn.00430490
mov edx, dword [esp + 0x2c]
mov dword [edx], ebx
mov eax, dword [ebx + 4]
mov dword [eax], ebx
mov eax, dword [esp + 0x1c]
jmp 0x4345f0
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x43488e
jle 0x434883
mov dword [esp + 0x34], ecx
mov esi, dword [eax]
cmp esi, eax
jne 0x434615
call fcn.0055d776
mov eax, dword [esp + 0x1c]
mov ebx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov esi, dword [eax]
cmp esi, eax
mov dword [esp + 0x44], ebx
jne 0x434632
call fcn.0055d776
mov eax, dword [esp + 0x1c]
cmp esi, eax
je 0x434653
mov ecx, dword [esi + 4]
mov edx, dword [esi]
mov dword [ecx], edx
mov eax, dword [esi]
mov ecx, dword [esi + 4]
push esi
mov dword [eax + 4], ecx
call fcn.0055d39b
mov eax, dword [esp + 0x20]
add esp, 4
sub dword [esp + 0x20], 1
mov esi, dword [esp + 0x44]
lea edx, [edi*8]
sub edx, edi
lea ecx, [ebx + edx*8]
mov bl, byte [esp + ecx + 0x84]
add esi, 0xffffffff
add bl, 1
cmp esi, 0xffffffff
mov dword [esp + 0x14], ecx
jle 0x4346f3
mov dl, byte [esp + ecx + 0x83]
cmp dl, 0xff
jne 0x4346d5
lea ecx, [eax + 4]
mov dword [esp + 0x2c], ecx
mov ecx, dword [ecx]
lea edx, [esp + 0x7c]
push edx
push ecx
push eax
lea ecx, [esp + 0x24]
mov dword [esp + 0x88], esi
mov dword [esp + 0x8c], edi
call fcn.0042e180
push 1
lea ecx, [esp + 0x1c]
mov esi, eax
call fcn.00430490
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
mov dword [edx], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
mov eax, dword [esp + 0x1c]
mov byte [esp + ecx + 0x83], bl
jmp 0x4346f3
cmp dl, 0xfe
jne 0x4346f3
mov byte [esp + ecx + 0x83], bl
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], edi
mov byte [esp + 0x12], 1
mov byte [esp + 0x13], 0
mov esi, dword [esp + 0x44]
add esi, 1
cmp esi, 0x38
jge 0x434773
mov dl, byte [esp + ecx + 0x85]
cmp dl, 0xff
jne 0x434755
lea ecx, [eax + 4]
mov dword [esp + 0x2c], ecx
mov ecx, dword [ecx]
lea edx, [esp + 0x6c]
push edx
push ecx
push eax
lea ecx, [esp + 0x24]
mov dword [esp + 0x78], esi
mov dword [esp + 0x7c], edi
call fcn.0042e180
push 1
lea ecx, [esp + 0x1c]
mov esi, eax
call fcn.00430490
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
mov dword [edx], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
mov eax, dword [esp + 0x1c]
mov byte [esp + ecx + 0x85], bl
jmp 0x434773
cmp dl, 0xfe
jne 0x434773
mov byte [esp + ecx + 0x85], bl
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], edi
mov byte [esp + 0x12], 1
mov byte [esp + 0x13], 0
lea esi, [edi - 1]
cmp esi, 0xffffffff
jle 0x4347f1
mov dl, byte [esp + ecx + 0x4c]
cmp dl, 0xff
jne 0x4347d2
mov edx, dword [esp + 0x44]
lea ecx, [eax + 4]
mov dword [esp + 0x74], edx
mov dword [esp + 0x2c], ecx
mov ecx, dword [ecx]
lea edx, [esp + 0x74]
push edx
push ecx
push eax
lea ecx, [esp + 0x24]
mov dword [esp + 0x84], esi
call fcn.0042e180
push 1
lea ecx, [esp + 0x1c]
mov esi, eax
call fcn.00430490
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
mov dword [edx], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
mov eax, dword [esp + 0x1c]
mov byte [esp + ecx + 0x4c], bl
jmp 0x4347f1
cmp dl, 0xfe
jne 0x4347f1
mov edx, dword [esp + 0x44]
mov byte [esp + ecx + 0x4c], bl
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], esi
mov byte [esp + 0x12], 1
mov byte [esp + 0x13], 0
lea esi, [edi + 1]
cmp esi, 0x25
jge 0x434874
mov dl, byte [esp + ecx + 0xbc]
cmp dl, 0xff
lea ecx, [esp + ecx + 0xbc]
mov dword [esp + 0x14], ecx
jne 0x434857
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x64], ecx
lea ecx, [eax + 4]
mov dword [esp + 0x2c], ecx
mov ecx, dword [ecx]
lea edx, [esp + 0x64]
push edx
push ecx
push eax
lea ecx, [esp + 0x24]
mov dword [esp + 0x74], esi
call fcn.0042e180
push 1
lea ecx, [esp + 0x1c]
mov esi, eax
call fcn.00430490
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
mov dword [edx], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
mov eax, dword [esp + 0x1c]
jmp 0x434872
cmp dl, 0xfe
jne 0x434874
mov edx, dword [esp + 0x44]
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], esi
mov byte [esp + 0x12], 1
mov byte [esp + 0x13], 0
mov byte [ecx], bl
sub dword [esp + 0x34], 1
jne 0x434606
mov esi, dword [esp + 0x30]
cmp byte [esp + 0x13], 0
jne 0x4345f0
mov ecx, dword [eax]
mov dword [eax], eax
mov eax, dword [esp + 0x1c]
mov dword [eax + 4], eax
mov edx, dword [esp + 0x1c]
cmp ecx, edx
mov dword [esp + 0x20], 0
je 0x4348c5
lea esp, [esp]
mov ebx, dword [ecx]
push ecx
call fcn.0055d39b
mov edx, dword [esp + 0x20]
add esp, 4
cmp ebx, edx
mov ecx, ebx
jne 0x4348b0
cmp byte [esp + 0x12], 0
je 0x434b33
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x34], eax
mov dword [esp + 0x4c], eax
sub eax, dword [esp + 0x24]
mov dword [esp + 0x50], ecx
sub ecx, dword [esp + 0x28]
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], ecx
mov ebx, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
lea eax, [ebx*8]
sub eax, ebx
lea eax, [ecx + eax*8]
mov dl, byte [esp + eax + 0x84]
cmp dl, 1
mov dword [esp + 0x14], eax
je 0x434b2f
mov eax, ebx
sub eax, dword [esp + 0x40]
mov dword [esp + 0x64], ecx
sub ecx, dword [esp + 0x3c]
lea ebx, [eax*8]
sub ebx, eax
movzx edx, dl
lea ebx, [ecx + ebx*8]
movzx ebx, byte [esp + ebx + 0x84]
add edx, 0xffffffff
cmp ebx, edx
jne 0x43495b
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x28]
mov edi, eax
mov eax, dword [esp + 0x24]
jmp 0x4349e3
mov eax, dword [esp + 0x24]
lea ecx, [eax - 1]
cmp ecx, 0xffffffff
jle 0x434983
mov ebx, dword [esp + 0x14]
movzx ebx, byte [esp + ebx + 0x83]
cmp ebx, edx
jne 0x434983
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x28]
mov edi, ecx
jmp 0x434987
mov ecx, dword [esp + 0x28]
lea ebx, [eax + 1]
cmp ebx, 0x38
jge 0x4349a8
mov ebx, dword [esp + 0x14]
movzx ebx, byte [esp + ebx + 0x85]
cmp ebx, edx
jne 0x4349a8
lea edi, [eax + 1]
mov dword [esp + 0x44], edi
mov edi, ecx
lea ebx, [ecx - 1]
cmp ebx, 0xffffffff
jle 0x4349c4
mov ebx, dword [esp + 0x14]
movzx ebx, byte [esp + ebx + 0x4c]
cmp ebx, edx
jne 0x4349c4
mov dword [esp + 0x44], eax
lea edi, [ecx - 1]
lea ebx, [ecx + 1]
cmp ebx, 0x25
jge 0x4349e3
mov ebx, dword [esp + 0x14]
movzx ebx, byte [esp + ebx + 0xbc]
cmp ebx, edx
jne 0x4349e3
mov dword [esp + 0x44], eax
lea edi, [ecx + 1]
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x4c], eax
sub eax, edx
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x50], ecx
sub ecx, edi
test edx, edx
mov dword [esp + 0x28], edi
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], ecx
je 0x434b01
test ebx, ebx
je 0x434b01
test eax, eax
je 0x434b01
test ecx, ecx
je 0x434b01
test edx, edx
jge 0x434a8f
test ebx, ebx
jle 0x434a8d
test eax, eax
jge 0x434a43
test ecx, ecx
jg 0x4348f4
mov dword [esp + 0x38], ecx
lea ecx, [esp + 0x4c]
push ecx
lea edx, [esp + 0x78]
mov dword [esp + 0x38], eax
push edx
call fcn.00403420
mov ecx, dword [esi + 4]
mov ebx, dword [ecx]
mov edx, dword [ebx + 4]
add esp, 8
push eax
push edx
push ebx
mov ecx, esi
call fcn.004039e0
push 1
mov ecx, esi
mov dword [esp + 0x34], eax
call fcn.00404830
mov eax, dword [esp + 0x30]
mov dword [ebx + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
jmp 0x4348f4
test edx, edx
jle 0x4348f4
test ebx, ebx
jge 0x4348f4
cmp dword [esp + 0x3c], 0
jle 0x434aaf
cmp dword [esp + 0x40], 0
jl 0x4348f4
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x40]
lea ecx, [esp + 0x4c]
mov dword [esp + 0x34], edx
push ecx
lea edx, [esp + 0x70]
push edx
mov dword [esp + 0x40], eax
call fcn.00403420
mov ecx, dword [esi + 4]
mov ebx, dword [ecx]
mov edx, dword [ebx + 4]
add esp, 8
push eax
push edx
push ebx
mov ecx, esi
call fcn.004039e0
push 1
mov ecx, esi
mov dword [esp + 0x34], eax
call fcn.00404830
mov eax, dword [esp + 0x30]
mov dword [ebx + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
jmp 0x4348f4
cmp edx, eax
jne 0x434b15
cmp ebx, ecx
je 0x4348f4
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x3c]
lea edx, [esp + 0x4c]
mov dword [esp + 0x34], eax
push edx
lea eax, [esp + 0x80]
mov dword [esp + 0x3c], ecx
push eax
jmp 0x434a55
mov edx, dword [esp + 0x1c]
mov eax, dword [edx]
mov dword [edx], edx
mov ecx, dword [esp + 0x1c]
mov dword [ecx + 4], ecx
mov ecx, dword [esp + 0x1c]
cmp eax, ecx
mov dword [esp + 0x20], 0
je 0x434b65
mov edi, edi
mov esi, dword [eax]
push eax
call fcn.0055d39b
mov ecx, dword [esp + 0x20]
add esp, 4
cmp esi, ecx
mov eax, esi
jne 0x434b50
push ecx
call fcn.0055d39b
mov al, byte [esp + 0x16]
add esp, 4
mov ecx, dword [esp + 0x8a8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x890]
xor ecx, esp
call fcn.0055d2d5
mov esp, ebp
pop ebp
ret 4