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

Disassembly:
sub esp, 0x6c
mov eax, dword [0x544354]
xor eax, esp
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0x80]
mov ecx, dword [esp + 0x88]
push ebx
mov ebx, dword [eax]
push ebp
mov ebp, dword [esp + 0x84]
push esi
mov esi, dword [esp + 0x7c]
mov dword [esp + 0x2c], ebx
mov ebx, dword [edx]
mov dword [eax], 0
push edi
mov edi, dword [esp + 0x84]
mov dword [edx], 0
mov dword [esp + 0x34], esi
mov dword [esp + 0x10], edi
mov dword [esp + 0x28], eax
mov dword [esp + 0x14], edx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x2c], ebx
mov dword [ecx], 0
jmp case.0x424c76.6
mov edx, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov ebx, dword [esp + 0x2c]
mov ecx, dword [edx]
sub ebx, ecx
mov eax, dword [esi]
cmp eax, 6
jne 0x424c65
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
mov dword [esp + 0x1c], ebx
sub eax, dword [ecx]
mov dword [esp + 0x24], eax
test ebx, ebx
jne 0x424ac3
test eax, eax
je 0x425149
push dword [esp + 0x20]
lea eax, [esp + 0x20]
push dword [esp + 0x98]
push 0
push eax
push ebp
lea eax, [esp + 0x38]
push eax
push edi
lea eax, [esi + 0x58]
push eax
call fcn.00424310
mov ecx, dword [esi + 0x190]
mov ebx, eax
mov edi, dword [esp + 0x24]
sub ecx, 1
je 0x424b37
sub ecx, 3
je 0x424b13
sub ecx, 6
jne 0x424b4d
push edi
push dword [esp + 0x14]
lea eax, [esi + 0x1a0]
push eax
call fcn.00493860
jmp 0x424b4d
push edi
push dword [esp + 0x14]
push dword [esi + 0x19c]
push dword [esi + 0x198]
call fcn.00422a50
mov dword [esi + 0x198], eax
mov dword [esi + 0x19c], edx
jmp 0x424b4d
push edi
push dword [esp + 0x14]
push dword [esi + 0x194]
call fcn.00461ba0
mov dword [esi + 0x194], eax
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
add ebp, eax
mov ecx, dword [esp + 0x28]
add dword [edx], eax
add dword [esi + 0x18], eax
adc dword [esi + 0x1c], 0
add dword [ecx], edi
add dword [esp + 0x10], edi
add dword [esi + 0x20], edi
adc dword [esi + 0x24], 0
test ebx, ebx
jne 0x425155
mov ecx, dword [esp + 0x20]
cmp dword [ecx], 1
jne 0x424c50
movzx ecx, word [esi + 0x10]
and ecx, 0xf
jne 0x424b93
xor eax, eax
jmp 0x424ba9
dec ecx
mov eax, 0x55555556
imul ecx
mov eax, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
shl eax, cl
mov edx, dword [esi + 0x14]
xor ecx, ecx
add edx, eax
adc ecx, ecx
add edx, dword [esi + 0x18]
adc ecx, dword [esi + 0x1c]
xor edi, edi
lea ebx, [ebx]
mov al, dl
or al, 0x80
shrd edx, ecx, 7
mov byte [esp + edi + 0x38], al
inc edi
shr ecx, 7
mov eax, edx
or eax, ecx
jne 0x424bc0
mov edx, dword [esi + 0x20]
xor ebx, ebx
mov ecx, dword [esi + 0x24]
lea esi, [esp + 0x38]
and byte [esp + edi + 0x37], 0x7f
add esi, edi
lea esp, [esp]
mov al, dl
or al, 0x80
shrd edx, ecx, 7
mov byte [ebx + esi], al
inc ebx
shr ecx, 7
mov eax, edx
or eax, ecx
jne 0x424bf0
mov esi, dword [esp + 0x34]
lea eax, [esp + 0x38]
add eax, edi
add edi, ebx
push edi
and byte [ebx + eax - 1], 0x7f
lea eax, [esp + 0x3c]
push eax
lea eax, [esi + 0x208]
push eax
call fcn.00493860
add dword [esi + 0x30], edi
mov dword [esi], 7
adc dword [esi + 0x34], 0
add dword [esi + 0x28], 1
mov dword [esi + 4], 0
adc dword [esi + 0x2c], 0
mov dword [esi + 8], 0
jmp 0x424a8a
test eax, eax
jne 0x424a8e
test edi, edi
je 0x425190
jmp 0x424a8e
test ebx, ebx
je 0x425186
cmp eax, 7
ja case.0x424c76.6
jmp dword [eax*4 + 0x4251a8]
mov ecx, dword [esi + 4]
cmp ecx, 0xc
jae 0x424cae
cmp ecx, 6
jae 0x424c99
mov al, byte [ebp]
cmp al, byte [ecx + 0x53cb08]
jne 0x42516c
mov al, byte [ebp]
inc ebp
mov byte [ecx + esi + 0x290], al
inc dword [esi + 4]
inc dword [edx]
jmp case.0x424c76.6
lea eax, [esi + 0x290]
push eax
lea eax, [esi + 0x10]
push eax
call fcn.00425390
test eax, eax
jne 0x425192
lea eax, [esi + 0x208]
mov dword [esi], 5
push eax
call fcn.00493810
mov edx, dword [esp + 0x14]
mov dword [esi + 0x30], 0
mov dword [esi + 0x34], 0
mov dword [esi + 0x28], 0
mov dword [esi + 0x2c], 0
mov dword [esi + 4], 0
jmp case.0x424c76.6
mov eax, dword [esi + 4]
test eax, eax
jne 0x424d8f
mov al, byte [ebp]
lea ebx, [esi + 0x290]
mov byte [ebx], al
inc ebp
inc dword [esi + 4]
inc dword [edx]
cmp byte [ebx], 0
jne 0x424d7d
push dword [esi + 0x2c]
lea eax, [esi + 0x291]
push dword [esi + 0x28]
push eax
call fcn.004256f0
inc eax
mov dword [esi + 0x3c], 0
add dword [esi + 0x30], eax
lea edi, [esi + 0x208]
mov dword [esi + 0xc], eax
adc dword [esi + 0x34], 0
mov dword [esi + 0x38], eax
lea eax, [esi + 0x270]
push eax
push edi
call fcn.004936f0
push edi
call fcn.00493810
push dword [esi + 0xc]
push ebx
push 0xffffffffffffffff
call fcn.00461ba0
mov edx, dword [esp + 0x14]
mov dword [esi + 0x50], eax
mov dword [esi], 1
movzx eax, byte [ebx]
lea eax, [eax*4 + 4]
mov dword [esi + 0x14], eax
jmp 0x424a8e
mov edi, dword [esi + 0x14]
cmp eax, edi
je 0x424dc0
sub edi, eax
cmp edi, ebx
jbe 0x424d9e
mov edi, ebx
push edi
add eax, 0x290
add eax, esi
push ebp
push eax
call fcn.004fa2e0
mov edx, dword [esp + 0x20]
add esp, 0xc
add dword [esi + 4], edi
add dword [edx], edi
add ebp, edi
jmp 0x424a8e
lea eax, [esi + 0x290]
push eax
lea edi, [esi + 0xf8]
push edi
call fcn.00424570
test eax, eax
jne 0x425192
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], eax
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], eax
movzx eax, word [esi + 0x10]
and eax, 0xf
mov dword [esi], 6
push eax
lea eax, [esi + 0x190]
push eax
call fcn.004247b0
push edi
lea eax, [esi + 0x58]
push eax
call fcn.004247f0
test eax, eax
jne 0x425192
jmp 0x424a8a
mov eax, dword [esi + 8]
add eax, dword [esi + 0x18]
and eax, 3
or eax, 0
je 0x424e54
lea eax, [ecx + 1]
mov dword [edx], eax
inc dword [esi + 8]
mov al, byte [ebp]
inc ebp
test al, al
je case.0x424c76.6
pop edi
pop esi
pop ebp
mov eax, 3
pop ebx
mov ecx, dword [esp + 0x68]
xor ecx, esp
call fcn.004f833c
add esp, 0x6c
ret 0x1c
movzx eax, word [esi + 0x10]
push eax
call fcn.004249f0
mov ecx, dword [esi + 4]
mov edi, eax
sub eax, ecx
mov dword [esp + 0x1c], eax
je 0x424e9c
cmp eax, ebx
jbe 0x424e75
mov eax, ebx
mov dword [esp + 0x1c], ebx
push eax
lea eax, [ecx + 0x290]
add eax, esi
push ebp
push eax
call fcn.004fa2e0
mov edx, dword [esp + 0x20]
add esp, 0xc
mov eax, dword [esp + 0x1c]
add dword [esi + 4], eax
add dword [edx], eax
add ebp, eax
jmp 0x424a8e
lea eax, [esp + 0x38]
mov dword [esi], 5
push eax
lea eax, [esi + 0x190]
mov dword [esi + 4], 0
push eax
call fcn.00424700
mov edx, dword [esp + 0x14]
test eax, eax
je 0x424a8e
lea edx, [esi + 0x290]
lea ecx, [esp + 0x38]
sub edi, 4
jb 0x424ee6
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x424eef
add ecx, 4
add edx, 4
sub edi, 4
jae 0x424ed5
cmp edi, 0xfffffffc
je 0x424a8a
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x424e3a
cmp edi, 0xfffffffd
je 0x424a8a
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x424e3a
cmp edi, 0xfffffffe
je 0x424a8a
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x424e3a
cmp edi, 0xffffffff
je 0x424a8a
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x424e3a
jmp 0x424a8a
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0xc]
jae 0x424f6d
lea eax, [ecx + 1]
mov dword [edx], eax
mov eax, dword [esi + 4]
mov dl, byte [ebp]
inc ebp
mov cl, byte [eax + esi + 0x290]
inc eax
mov dword [esi + 4], eax
cmp dl, cl
jne 0x424e3a
mov edx, dword [esp + 0x14]
jmp case.0x424c76.6
mov edi, dword [esi + 0x3c]
mov edx, dword [esi + 0x34]
mov ecx, dword [esi + 0x38]
mov eax, dword [esi + 0x30]
cmp edi, edx
ja 0x424fc4
jb 0x424f83
cmp ecx, eax
jae 0x424fc4
sub eax, ecx
sbb edx, edi
xor ecx, ecx
cmp ecx, edx
jb 0x424f95
ja 0x424f93
cmp ebx, eax
jbe 0x424f95
mov ebx, eax
push ebx
push ebp
push dword [esi + 0x50]
call fcn.00461ba0
push ebx
mov dword [esi + 0x50], eax
lea eax, [esi + 0x208]
push ebp
push eax
call fcn.00493860
mov edx, dword [esp + 0x14]
add ebp, ebx
add dword [edx], ebx
add dword [esi + 0x38], ebx
adc dword [esi + 0x3c], 0
jmp 0x424a8e
and ecx, 3
or ecx, 0
je 0x42500c
mov al, byte [ebp]
inc ebp
mov byte [esp + 0x1b], al
lea eax, [esp + 0x1b]
push 1
push eax
push dword [esi + 0x50]
call fcn.00461ba0
mov edx, dword [esp + 0x14]
mov dword [esi + 0x50], eax
inc dword [edx]
add dword [esi + 0x38], 1
adc dword [esi + 0x3c], 0
add dword [esi + 0x30], 1
adc dword [esi + 0x34], 0
cmp byte [esp + 0x1b], 0
jne 0x424e3a
jmp 0x424a8e
add eax, 4
mov dword [esi], 2
mov dword [esi + 0x30], eax
lea eax, [esp + 0x38]
push eax
lea eax, [esi + 0x208]
mov dword [esi + 4], 0
adc edx, 0
push eax
mov dword [esi + 0x34], edx
call fcn.004936f0
lea edx, [esi + 0x270]
mov edi, 0x1c
lea ecx, [esp + 0x38]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x424e3a
add ecx, 4
add edx, 4
sub edi, 4
jae 0x425045
jmp 0x424a8a
cmp dword [esi + 4], 4
jae 0x425080
lea eax, [ecx + 1]
mov dword [edx], eax
mov ecx, dword [esi + 4]
mov al, byte [ebp]
mov byte [esi + ecx + 0x290], al
inc dword [esi + 4]
inc ebp
jmp case.0x424c76.6
mov eax, dword [esi + 0x50]
not eax
mov dword [esi], 3
cmp eax, dword [esi + 0x290]
mov dword [esi + 4], 0
jmp 0x424e34
mov eax, dword [esi + 4]
mov edi, 0xc
sub edi, eax
cmp edi, ebx
jbe 0x4250ad
mov edi, ebx
push edi
add eax, 0x290
add eax, esi
push ebp
push eax
call fcn.004fa2e0
mov edx, dword [esp + 0x20]
add ebp, edi
add dword [esi + 4], edi
add esp, 0xc
add dword [edx], edi
cmp dword [esi + 4], 0xc
mov edi, dword [esp + 0x10]
jne case.0x424c76.6
add dword [esi + 0x48], 1
lea eax, [esi + 0x290]
push eax
push dword [esi + 0x34]
movzx eax, word [esi + 0x10]
push dword [esi + 0x30]
adc dword [esi + 0x4c], 0
push eax
mov dword [esi], 4
mov dword [esi + 0x40], 0
mov dword [esi + 0x44], 0
call fcn.00425290
test al, al
je 0x424e3a
jmp 0x424a8a
cmp byte [ebp], 0
je 0x425136
test byte [esi + 0x40], 3
jne 0x42516c
mov dword [esi + 4], 0
mov dword [esi], 0
jmp case.0x424c76.6
lea eax, [ecx + 1]
inc ebp
mov dword [edx], eax
add dword [esi + 0x40], 1
adc dword [esi + 0x44], 0
jmp case.0x424c76.6
mov eax, dword [esp + 0x20]
mov dword [eax], 2
jmp 0x425190
pop edi
pop esi
pop ebp
mov eax, ebx
pop ebx
mov ecx, dword [esp + 0x68]
xor ecx, esp
call fcn.004f833c
add esp, 0x6c
ret 0x1c
pop edi
pop esi
pop ebp
mov eax, 0x11
pop ebx
mov ecx, dword [esp + 0x68]
xor ecx, esp
call fcn.004f833c
add esp, 0x6c
ret 0x1c
mov eax, dword [esp + 0x20]
mov dword [eax], 3
xor eax, eax
mov ecx, dword [esp + 0x78]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004f833c
add esp, 0x6c
ret 0x1c