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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x20]
cmp eax, dword [ecx]
ja 0x43f563
xor edi, edi
mov eax, 0x2c
call fcn.0042a440
jmp fcn.0043f540
sub esp, 0xa0
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
mov ebx, dword [esp + 0xa4]
mov dword [esp], ebx
mov ebx, dword [esp + 0xa8]
mov dword [esp + 4], ebx
call fcn.00432330
mov edx, dword [esp + 8]
mov dword [esp + 0x70], edx
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x74], ecx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x48], ebx
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x7c], ebx
cmp eax, 0
mov dword [esp + 0x78], eax
je 0x43f6d6
mov ebx, dword [esp + 0xb0]
mov dword [esp + 0x6c], ebx
mov dword [esp], 0x614340
call fcn.00424940
mov edi, dword [esp + 4]
cmp edi, 0
je 0x43f6cf
lea esi, [0x631690]
mov ecx, edi
cld
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [esp + 0x64], ecx
mov ebp, dword [esp + 0xa4]
mov dword [ecx + 8], ebp
mov ebp, dword [esp + 0xa8]
mov dword [ecx + 0xc], ebp
mov eax, dword [0x76c560]
xor ebx, ebx
cmp eax, ebx
je 0x43f6a6
mov esi, dword [esp + 0x6c]
cmp ecx, 0
je 0x43f6a2
mov dword [esp + 0x88], eax
mov dword [ecx + 0x10], eax
mov dword [esp + 0x8c], esi
mov dword [ecx + 0x14], esi
mov ebp, dword [esp + 0x78]
mov dword [ecx + 0x18], ebp
mov ebp, dword [esp + 0x7c]
mov dword [ecx + 0x1c], ebp
mov dword [esp + 0x64], ecx
mov eax, dword [0x76c570]
xor ebx, ebx
cmp eax, ebx
je 0x43f680
mov dword [esp + 0xc4], 0
mov ebx, dword [esp + 0x64]
mov dword [esp + 0xcc], ebx
mov dword [esp + 0xc8], eax
add esp, 0xa0
ret
mov dword [esp], 0x611c80
mov dword [esp + 4], 0x5f0ca0
mov dword [esp + 8], 0x76c570
call fcn.00422420
mov eax, dword [esp + 0xc]
jmp 0x43f65c
mov dword [ecx], eax
jmp 0x43f62a
mov dword [esp], 0x61ab40
mov dword [esp + 4], 0x605a60
mov dword [esp + 8], 0x76c560
call fcn.00422420
mov ecx, dword [esp + 0x64]
mov eax, dword [esp + 0xc]
jmp 0x43f621
mov dword [edi], eax
jmp 0x43f5ee
mov dword [esp + 0x90], edx
cmp ecx, 2
jne 0x43fa45
mov dword [esp], edx
mov dword [esp + 0x94], ecx
mov dword [esp + 4], ecx
lea esi, [0x62e1f8]
lea edi, [esp + 8]
cld
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.00428080
mov edx, dword [esp + 0x90]
mov ecx, dword [esp + 0x94]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x43fa45
xor ebx, ebx
cmp dword [esp + 0xb0], ebx
jne 0x43f7e1
mov dword [esp], 0x614340
call fcn.00424940
mov edi, dword [esp + 4]
cmp edi, 0
je 0x43f7da
lea esi, [0x631690]
mov ecx, edi
cld
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov ebp, dword [esp + 0xa4]
mov dword [ecx + 8], ebp
mov ebp, dword [esp + 0xa8]
mov dword [ecx + 0xc], ebp
mov edi, ecx
add edi, 0x10
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov ebp, dword [0x76ccb8]
mov dword [ecx + 0x18], ebp
mov ebp, dword [0x76ccbc]
mov dword [ecx + 0x1c], ebp
mov dword [esp + 0x64], ecx
mov eax, dword [0x76c570]
xor ebx, ebx
cmp eax, ebx
je 0x43f7b8
mov dword [esp + 0xc4], 0
mov ebx, dword [esp + 0x64]
mov dword [esp + 0xcc], ebx
mov dword [esp + 0xc8], eax
add esp, 0xa0
ret
mov dword [esp], 0x611c80
mov dword [esp + 4], 0x5f0ca0
mov dword [esp + 8], 0x76c570
call fcn.00422420
mov eax, dword [esp + 0xc]
jmp 0x43f794
mov dword [edi], eax
jmp 0x43f74a
mov ebx, dword [esp + 0xac]
mov dword [esp + 0x6c], ebx
mov ebx, dword [esp + 0xb0]
mov dword [esp + 0x68], ebx
mov esi, dword [0x76c568]
xor ebx, ebx
cmp esi, ebx
mov dword [esp + 0x60], esi
je 0x43fa1c
mov eax, dword [0x76c568]
xor ebx, ebx
cmp eax, ebx
je 0x43f9f3
mov ebx, dword [esp + 0x70]
mov dword [esp], ebx
mov ebx, dword [esp + 0x74]
mov dword [esp + 4], ebx
mov ebp, dword [esp + 0x6c]
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebp
mov edx, dword [esp + 0x68]
mov dword [esp + 0x80], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x84], edx
mov dword [esp + 0x14], edx
lea esi, [esp + 0xb4]
lea edi, [esp + 0x18]
cld
call fcn.0042c278
mov dword [esp + 0x28], 3
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x2c], ebx
lea esi, [0x631690]
lea edi, [esp + 0x30]
cld
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov ebx, 0x69cf40
mov dword [esp + 0x38], ebx
call fcn.00441c10
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x40]
mov ebx, dword [esp + 0x44]
mov dword [esp + 0x7c], ebx
cmp ecx, 0
mov dword [esp + 0x78], ecx
je 0x43f9b5
mov ebx, dword [esp + 0xb0]
mov dword [esp + 0x6c], ebx
mov dword [esp], 0x614340
call fcn.00424940
mov edi, dword [esp + 4]
cmp edi, 0
je 0x43f9ae
lea esi, [0x631690]
mov ecx, edi
cld
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [esp + 0x64], ecx
mov ebp, dword [esp + 0xa4]
mov dword [ecx + 8], ebp
mov ebp, dword [esp + 0xa8]
mov dword [ecx + 0xc], ebp
mov eax, dword [0x76c560]
xor ebx, ebx
cmp eax, ebx
je 0x43f985
mov esi, dword [esp + 0x6c]
cmp ecx, 0
je 0x43f981
mov dword [esp + 0x88], eax
mov dword [ecx + 0x10], eax
mov dword [esp + 0x8c], esi
mov dword [ecx + 0x14], esi
mov ebp, dword [esp + 0x78]
mov dword [ecx + 0x18], ebp
mov ebp, dword [esp + 0x7c]
mov dword [ecx + 0x1c], ebp
mov dword [esp + 0x64], ecx
mov eax, dword [0x76c570]
xor ebx, ebx
cmp eax, ebx
je 0x43f95f
mov dword [esp + 0xc4], 0
mov ebx, dword [esp + 0x64]
mov dword [esp + 0xcc], ebx
mov dword [esp + 0xc8], eax
add esp, 0xa0
ret
mov dword [esp], 0x611c80
mov dword [esp + 4], 0x5f0ca0
mov dword [esp + 8], 0x76c570
call fcn.00422420
mov eax, dword [esp + 0xc]
jmp 0x43f93b
mov dword [ecx], eax
jmp 0x43f909
mov dword [esp], 0x61ab40
mov dword [esp + 4], 0x605a60
mov dword [esp + 8], 0x76c560
call fcn.00422420
mov ecx, dword [esp + 0x64]
mov eax, dword [esp + 0xc]
jmp 0x43f900
mov dword [edi], eax
jmp 0x43f8cd
mov dword [esp + 0x50], eax
mov dword [esp], 0x602ca0
call fcn.00424940
mov eax, dword [esp + 4]
mov ebp, dword [esp + 0x50]
mov dword [eax], ebp
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
add esp, 0xa0
ret
mov dword [esp], 0x61ab40
mov dword [esp + 4], 0x613580
mov dword [esp + 8], 0x76c568
call fcn.00422420
mov esi, dword [esp + 0x60]
mov eax, dword [esp + 0xc]
jmp 0x43f81b
mov dword [esp], 0x61ab40
mov dword [esp + 4], 0x613580
mov dword [esp + 8], 0x76c568
call fcn.00422420
mov esi, dword [esp + 0xc]
mov dword [esp + 0x60], esi
jmp 0x43f80b
cmp ecx, 3
jne 0x43fa86
mov dword [esp], edx
mov dword [esp + 0x94], ecx
mov dword [esp + 4], ecx
lea esi, [0x62e208]
lea edi, [esp + 8]
cld
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.00428080
mov edx, dword [esp + 0x90]
mov ecx, dword [esp + 0x94]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
jne 0x43f722
mov dword [esp + 0x94], ecx
cmp ecx, 3
jne 0x43fab9
mov dword [esp], edx
mov dword [esp + 4], ecx
lea esi, [0x62e218]
lea edi, [esp + 8]
cld
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.00428080
movzx ebx, byte [esp + 0x10]
cmp bl, 0
jne 0x43f722
mov ebx, dword [esp + 0xb0]
mov dword [esp + 0x6c], ebx
mov ebx, dword [esp + 0xa4]
mov dword [esp + 0x98], ebx
mov ebx, dword [esp + 0xa8]
mov dword [esp + 0x9c], ebx
mov dword [esp], 0x614340
call fcn.00424940
mov edi, dword [esp + 4]
cmp edi, 0
je 0x43fc15
lea esi, [0x631690]
mov edx, edi
cld
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [esp + 0x64], edx
mov ebp, dword [esp + 0xa4]
mov dword [edx + 8], ebp
mov ebp, dword [esp + 0xa8]
mov dword [edx + 0xc], ebp
mov eax, dword [0x76c560]
xor ebx, ebx
cmp eax, ebx
je 0x43fbec
mov esi, dword [esp + 0x6c]
cmp edx, 0
je 0x43fbe5
mov dword [esp + 0x88], eax
mov dword [edx + 0x10], eax
mov dword [esp + 0x8c], esi
mov dword [edx + 0x14], esi
mov dword [esp], 0x60ee40
mov dword [esp + 4], 0x5f0ca0
mov dword [esp + 8], 0x76c720
lea ebx, [esp + 0x98]
mov dword [esp + 0xc], ebx
call fcn.00422470
mov edi, dword [esp + 0x64]
lea ebx, [esp + 0x10]
mov esi, ebx
mov edx, edi
cmp edi, 0
je 0x43fbe1
add edi, 0x18
cld
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [esp + 0x64], edx
mov eax, dword [0x76c570]
xor ebx, ebx
cmp eax, ebx
je 0x43fbbf
mov dword [esp + 0xc4], 0
mov ebx, dword [esp + 0x64]
mov dword [esp + 0xcc], ebx
mov dword [esp + 0xc8], eax
add esp, 0xa0
ret
mov dword [esp], 0x611c80
mov dword [esp + 4], 0x5f0ca0
mov dword [esp + 8], 0x76c570
call fcn.00422420
mov eax, dword [esp + 0xc]
jmp 0x43fb9b
mov dword [edi], eax
jmp 0x43fb85
mov dword [edx], eax
jmp 0x43fb39
mov dword [esp], 0x61ab40
mov dword [esp + 4], 0x605a60
mov dword [esp + 8], 0x76c560
call fcn.00422420
mov edx, dword [esp + 0x64]
mov eax, dword [esp + 0xc]
jmp 0x43fb2c
mov dword [edi], eax
jmp 0x43faf9