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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5a070b
sub esp, 0x74
mov byte [esp + 0x7c], 0
mov eax, dword [esp + 0x78]
cmp dword [eax + 0x64], 1
jge 0x59fe09
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.0059c5c0
movzx eax, byte [esp + 8]
test al, al
je 0x5a06b6
mov eax, dword [esp + 0x78]
movzx ecx, byte [eax + 0xdc]
test cl, cl
je 0x5a069c
mov ecx, dword [eax + 0x88]
mov dword [esp + 0x2c], ecx
mov edx, dword [eax + 0x8c]
mov dword [esp + 0x28], edx
mov ebx, dword [eax + 0x84]
mov dword [esp + 0x24], ebx
mov dword [esp], eax
call fcn.005a2f60
movzx eax, byte [esp + 4]
test al, al
je 0x5a068e
mov eax, dword [esp + 0x78]
mov ecx, dword [eax + 0x8c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x10], ecx
call fcn.005a0f20
movzx eax, byte [esp + 0x14]
test al, al
je 0x5a0680
mov edx, dword [esp + 0x78]
cmp dword [edx + 0x64], 4
jge 0x59feb1
mov dword [esp], edx
mov dword [esp + 4], 4
call fcn.0059c5c0
movzx eax, byte [esp + 8]
test al, al
je 0x5a0672
mov edx, dword [esp + 0x78]
mov ecx, dword [edx + 0x58]
mov ebx, dword [edx + 0x54]
mov ebp, dword [edx + 0x5c]
mov eax, dword [edx + 0x60]
cmp ecx, eax
jbe 0x5a0705
movzx esi, byte [ebx + eax]
mov edi, ebp
lea ebp, [ebx + eax]
xchg esi, eax
test al, al
xchg esi, eax
je 0x5a0658
mov dword [esp + 0x58], ebp
mov ebp, dword [edx + 0x8c]
test ebp, ebp
jne 0x59ffc0
xchg esi, eax
cmp al, 0x25
xchg esi, eax
je 0x59ffa6
test ebp, ebp
jne 0x59ffc0
xchg esi, eax
cmp al, 0x2d
xchg esi, eax
jne 0x59ffc0
lea ebp, [eax + 1]
cmp ecx, ebp
jbe 0x5a06fe
lea ebp, [ebx + eax + 1]
cmp byte [ebp], 0x2d
jne 0x59ffc0
lea ebp, [eax + 2]
cmp ecx, ebp
jbe 0x5a06f7
lea ebp, [ebx + eax + 2]
cmp byte [ebp], 0x2d
jne 0x59ffc0
mov dword [esp + 0x18], eax
mov dword [esp + 0x2c], edi
mov dword [esp + 0x20], ecx
mov dword [esp + 0x54], ebx
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
lea edx, [eax + 3]
mov dword [esp + 0xc], edx
call fcn.005afad0
movzx eax, byte [esp + 0x10]
test al, al
jne 0x59ff80
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x78]
mov ebx, dword [esp + 0x54]
mov edi, dword [esp + 0x2c]
jmp 0x59ffc0
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.005a1720
movzx eax, byte [esp + 8]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov dword [esp], edx
call fcn.005a1530
movzx eax, byte [esp + 4]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov ebp, dword [edx + 0x8c]
test ebp, ebp
jne 0x5a0050
mov ebp, dword [esp + 0x58]
cmp byte [ebp], 0x2e
jne 0x5a0054
lea esi, [eax + 1]
cmp ecx, esi
jbe 0x5a06f0
lea esi, [ebx + eax + 1]
cmp byte [esi], 0x2e
jne 0x5a0054
lea esi, [eax + 2]
cmp ecx, esi
jbe 0x5a06e9
lea esi, [ebx + eax + 2]
cmp byte [esi], 0x2e
jne 0x5a0054
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
add eax, 3
mov dword [esp + 0xc], eax
call fcn.005afad0
movzx eax, byte [esp + 0x10]
test al, al
jne 0x5a002a
mov edx, dword [esp + 0x78]
mov ebp, dword [esp + 0x58]
jmp 0x5a0054
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], 6
call fcn.005a1720
movzx eax, byte [esp + 8]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov ebp, dword [esp + 0x58]
mov ecx, dword [edx + 0x88]
mov ebx, dword [edx + 0x8c]
mov esi, dword [edx + 0x84]
mov eax, ebp
mov ebp, dword [edx + 0xe8]
mov edi, ecx
mov ecx, dword [edx + 0xe4]
test ebp, ebp
je 0x5a00b5
mov edx, dword [edx + 0xe0]
test edx, edx
jne 0x5a008b
cmp byte [eax], 0x3a
je 0x5a0092
test edx, edx
jle 0x5a00b1
cmp byte [eax], 0x2c
jne 0x5a00ab
lea edx, [ebp + ebp*8]
lea edx, [ecx + edx*8 - 0x48]
mov esi, dword [edx + 4]
mov ecx, dword [edx + 8]
mov ebx, dword [edx + 0xc]
mov edx, dword [esp + 0x78]
mov edi, ecx
jmp 0x5a00b5
mov edx, dword [esp + 0x78]
jmp 0x5a00b5
mov edx, dword [esp + 0x78]
mov dword [esp + 0x1c], edi
xor eax, eax
lea edi, [esp + 0x5c]
call fcn.0046395a
lea ecx, [0x5a0720]
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x7c]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], esi
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x70], ebx
lea ecx, [esp + 0x5c]
mov dword [esp + 0x3c], ecx
lea ecx, [esp + 0x30]
mov dword [esp], ecx
call fcn.00434700
test eax, eax
jne 0x5a064f
mov edx, dword [esp + 0x58]
cmp byte [edx], 0x5b
je 0x5a0629
mov edx, dword [esp + 0x78]
mov ecx, dword [edx + 0x58]
mov ebx, dword [edx + 0x54]
mov ebp, dword [edx + 0x5c]
mov eax, dword [edx + 0x60]
cmp ecx, eax
jbe 0x5a06e4
movzx esi, byte [ebx + eax]
xchg esi, eax
cmp al, 0x7b
xchg esi, eax
je 0x5a0607
xchg esi, eax
cmp al, 0x5d
xchg esi, eax
je 0x5a05e5
xchg esi, eax
cmp al, 0x7d
xchg esi, eax
je 0x5a05c3
xchg esi, eax
cmp al, 0x2c
xchg esi, eax
je 0x5a05a9
xchg esi, eax
cmp al, 0x2d
xchg esi, eax
jne 0x5a0188
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
inc eax
mov dword [esp + 0xc], eax
call fcn.005afad0
movzx eax, byte [esp + 0x10]
test al, al
jne 0x5a058b
mov edx, dword [esp + 0x78]
mov ecx, dword [edx + 0x58]
mov ebx, dword [edx + 0x54]
mov ebp, dword [edx + 0x5c]
mov eax, dword [edx + 0x60]
cmp ecx, eax
jbe 0x5a06df
lea esi, [ebx + eax]
cmp byte [esi], 0x3f
jne 0x5a01f1
mov esi, dword [edx + 0xe0]
test esi, esi
jle 0x5a01b5
mov eax, 1
jmp 0x5a01d3
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
inc eax
mov dword [esp + 0xc], eax
call fcn.005afad0
movzx eax, byte [esp + 0x10]
mov edx, dword [esp + 0x78]
test al, al
je 0x5a01f1
mov dword [esp], edx
call fcn.005a22d0
movzx eax, byte [esp + 4]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov ecx, dword [edx + 0x58]
mov ebx, dword [edx + 0x54]
mov ebp, dword [edx + 0x5c]
mov eax, dword [edx + 0x60]
cmp ecx, eax
jbe 0x5a06da
lea esi, [ebx + eax]
cmp byte [esi], 0x3a
jne 0x5a025a
mov esi, dword [edx + 0xe0]
test esi, esi
jle 0x5a021e
mov eax, 1
jmp 0x5a023c
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
inc eax
mov dword [esp + 0xc], eax
call fcn.005afad0
movzx eax, byte [esp + 0x10]
mov edx, dword [esp + 0x78]
test al, al
je 0x5a025a
mov dword [esp], edx
call fcn.005a2610
movzx eax, byte [esp + 4]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov ecx, dword [edx + 0x58]
mov ebx, dword [edx + 0x54]
mov ebp, dword [edx + 0x5c]
mov eax, dword [edx + 0x60]
cmp ecx, eax
jbe 0x5a06d5
movzx esi, byte [ebx + eax]
xchg esi, eax
cmp al, 0x2a
xchg esi, eax
je 0x5a0569
xchg esi, eax
cmp al, 0x26
xchg esi, eax
je 0x5a0547
xchg esi, eax
cmp al, 0x21
xchg esi, eax
je 0x5a052d
xchg esi, eax
cmp al, 0x7c
xchg esi, eax
jne 0x5a02c3
mov edi, dword [edx + 0xe0]
test edi, edi
jne 0x5a02c3
mov dword [esp], edx
mov byte [esp + 4], 1
call fcn.005a2c50
movzx eax, byte [esp + 8]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
xchg esi, eax
cmp al, 0x3e
xchg esi, eax
jne 0x5a02f3
mov edi, dword [edx + 0xe0]
test edi, edi
jne 0x5a02f3
mov dword [esp], edx
mov byte [esp + 4], 0
call fcn.005a2c50
movzx eax, byte [esp + 8]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
xchg esi, eax
cmp al, 0x27
xchg esi, eax
je 0x5a050e
xchg esi, eax
cmp al, 0x22
xchg esi, eax
je 0x5a04ef
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], eax
call fcn.005afad0
movzx eax, byte [esp + 0x10]
test al, al
je 0x5a032c
mov edx, dword [esp + 0x78]
jmp 0x5a03a8
mov edx, dword [esp + 0x78]
mov ecx, dword [edx + 0x58]
mov ebx, dword [edx + 0x54]
mov eax, dword [edx + 0x60]
cmp ecx, eax
jbe 0x5a06d0
movzx ebx, byte [ebx + eax]
cmp bl, 0x2d
je 0x5a03a8
cmp bl, 0x3f
je 0x5a03a8
cmp bl, 0x3a
je 0x5a03a8
cmp bl, 0x2c
je 0x5a03a8
cmp bl, 0x5b
je 0x5a03a8
cmp bl, 0x5d
je 0x5a03a8
cmp bl, 0x7b
je 0x5a03a8
cmp bl, 0x7d
je 0x5a03a8
cmp bl, 0x23
je 0x5a03a8
cmp bl, 0x26
je 0x5a03a8
cmp bl, 0x2a
je 0x5a03a8
cmp bl, 0x21
je 0x5a03a8
cmp bl, 0x7c
je 0x5a03a8
cmp bl, 0x3e
je 0x5a03a8
cmp bl, 0x27
je 0x5a03a8
cmp bl, 0x22
je 0x5a03a8
cmp bl, 0x25
je 0x5a03a8
cmp bl, 0x40
je 0x5a03a8
cmp bl, 0x60
jne 0x5a04d5
mov ecx, dword [edx + 0x58]
mov ebx, dword [edx + 0x54]
mov ebp, dword [edx + 0x5c]
mov eax, dword [edx + 0x60]
cmp eax, ecx
jae 0x5a06cb
movzx esi, byte [ebx + eax]
xchg esi, eax
cmp al, 0x2d
xchg esi, eax
jne 0x5a03ec
mov edi, ebp
lea ebp, [eax + 1]
cmp ecx, ebp
jbe 0x5a06c4
movzx ebp, byte [eax + ebx + 1]
xchg ebp, eax
cmp al, 0x20
xchg ebp, eax
je 0x5a03ee
xchg ebp, eax
cmp al, 9
xchg ebp, eax
je 0x5a03ee
jmp 0x5a04d5
mov edi, ebp
mov ebp, dword [edx + 0xe0]
test ebp, ebp
jne 0x5a042d
xchg esi, eax
cmp al, 0x3f
xchg esi, eax
je 0x5a0406
xchg esi, eax
cmp al, 0x3a
xchg esi, eax
jne 0x5a0429
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
inc eax
mov dword [esp + 0xc], eax
call fcn.005afad0
movzx eax, byte [esp + 0x10]
xor eax, 1
mov edx, dword [esp + 0x78]
jmp 0x5a042f
xor eax, eax
jmp 0x5a042f
xor eax, eax
test al, al
jne 0x5a04d5
mov ecx, dword [edx + 0x88]
mov ebx, dword [edx + 0x8c]
mov ebp, dword [edx + 0x84]
mov dword [edx], 3
mov dword [edx + 0x24], 0x21
mov esi, dword [0x7c78f0]
test esi, esi
jne 0x5a046b
lea esi, [0x617b52]
mov dword [edx + 0x20], esi
jmp 0x5a0479
lea edi, [edx + 0x20]
lea eax, [0x617b52]
call fcn.00463730
mov dword [edx + 0x28], ebp
mov dword [edx + 0x2c], ecx
mov dword [edx + 0x30], ebx
mov dword [edx + 8], 0x2b
mov ecx, dword [0x7c78f0]
test ecx, ecx
jne 0x5a049e
lea eax, [0x61a62c]
mov dword [edx + 4], eax
jmp 0x5a04ac
lea edi, [edx + 4]
lea eax, [0x61a62c]
call fcn.00463730
mov eax, dword [edx + 0x88]
mov ecx, dword [edx + 0x8c]
mov ebx, dword [edx + 0x84]
mov dword [edx + 0x14], ebx
mov dword [edx + 0x18], eax
mov dword [edx + 0x1c], ecx
mov byte [esp + 0x7c], 0
call fcn.00434cd0
add esp, 0x74
ret
mov dword [esp], edx
call fcn.005a2eb0
movzx eax, byte [esp + 4]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov dword [esp], edx
mov byte [esp + 4], 0
call fcn.005a2e00
movzx eax, byte [esp + 8]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov dword [esp], edx
mov byte [esp + 4], 1
call fcn.005a2e00
movzx eax, byte [esp + 8]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov dword [esp], edx
call fcn.005a2ba0
movzx eax, byte [esp + 4]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov dword [esp], edx
mov dword [esp + 4], 0x13
call fcn.005a2af0
movzx eax, byte [esp + 8]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov dword [esp], edx
mov dword [esp + 4], 0x12
call fcn.005a2af0
movzx eax, byte [esp + 8]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov eax, dword [esp + 0x78]
mov dword [esp], eax
call fcn.005a1fa0
movzx eax, byte [esp + 4]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov dword [esp], edx
call fcn.005a1d90
movzx eax, byte [esp + 4]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov dword [esp], edx
mov dword [esp + 4], 0xd
call fcn.005a1b00
movzx eax, byte [esp + 8]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov dword [esp], edx
mov dword [esp + 4], 0xb
call fcn.005a1b00
movzx eax, byte [esp + 8]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov dword [esp], edx
mov dword [esp + 4], 0xc
call fcn.005a19b0
movzx eax, byte [esp + 8]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], 0xa
call fcn.005a19b0
movzx eax, byte [esp + 8]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
call fcn.00434cd0
add esp, 0x74
ret
mov dword [esp], edx
call fcn.005a12d0
movzx eax, byte [esp + 4]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov byte [esp + 0x7c], 0
call fcn.00434cd0
add esp, 0x74
ret
mov byte [esp + 0x7c], 0
call fcn.00434cd0
add esp, 0x74
ret
mov byte [esp + 0x7c], 0
call fcn.00434cd0
add esp, 0x74
ret
mov dword [esp], eax
call fcn.005a1120
movzx eax, byte [esp + 4]
mov byte [esp + 0x7c], al
call fcn.00434cd0
add esp, 0x74
ret
mov byte [esp + 0x7c], 0
call fcn.00434cd0
add esp, 0x74
ret
mov eax, ebp
call fcn.004637b0
call fcn.004637b0
call fcn.004637b0
call fcn.004637b0
call fcn.004637b0
call fcn.004637b0
call fcn.004637b0
mov eax, esi
call fcn.004637b0
mov eax, esi
call fcn.004637b0
mov eax, ebp
call fcn.004637b0
mov eax, ebp
call fcn.004637b0
call fcn.004637b0
nop
call fcn.00462320
jmp fcn.0059fdc0