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

Disassembly:
sub esp, 0x1c
mov eax, dword [esp + 0x24]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x2c]
mov ecx, dword [esi]
mov dword [eax + 0xc0], ecx
mov edx, dword [esi + 4]
mov dword [eax + 0xc4], edx
mov dword [esp + 0xc], ecx
mov ecx, dword [esi + 8]
mov dword [eax + 0xc8], ecx
push edi
mov dword [esp + 0x18], ecx
mov ecx, dword [esi + 0xc]
mov dword [eax + 0xcc], ecx
mov dword [esp + 0x1c], ecx
mov ecx, dword [esi + 0x10]
mov ebx, ecx
shr ebx, 0x10
movzx ebx, bl
mov edi, ecx
shr edi, 0x18
mov edi, dword [edi*4 + 0x4540c0]
xor edi, dword [ebx*4 + 0x453cc0]
mov ebx, ecx
shr ebx, 8
movzx ebx, bl
xor edi, dword [ebx*4 + 0x4538c0]
mov dword [esp + 0x20], ecx
movzx ecx, cl
xor edi, dword [ecx*4 + 0x4534c0]
mov dword [eax + 0xb0], edi
mov ecx, dword [esi + 0x14]
mov ebx, ecx
shr ebx, 0x10
movzx edi, bl
mov ebx, ecx
shr ebx, 8
movzx ebp, bl
movzx ebx, cl
add ebx, ebx
add ebx, ebx
mov dword [esp + 0x30], ebx
mov ebx, dword [ebx + 0x4534c0]
add edi, edi
add ebp, ebp
xor ebx, dword [ebp + ebp + 0x4538c0]
add edi, edi
xor ebx, dword [edi + 0x453cc0]
add ebp, ebp
mov esi, ecx
shr esi, 0x18
add esi, esi
xor ebx, dword [esi + esi + 0x4540c0]
add esi, esi
mov dword [eax + 0xb4], ebx
mov ebx, dword [esp + 0x30]
mov ebx, dword [ebx + 0x4510c0]
xor ebx, dword [ebp + str.cwko0]
xor ebx, dword [edi + 0x4508c0]
xor ebx, dword [esi + 0x450cc0]
mov esi, dword [esp + 0x10]
xor ebx, dword [0x44f480]
xor esi, ebx
mov dword [esp + 0x10], esi
mov ebx, dword [esp + 0x10]
shr ebx, 0x10
shr esi, 0x18
mov esi, dword [esi*4 + 0x4540c0]
movzx edi, bl
xor esi, dword [edi*4 + 0x453cc0]
mov ebx, dword [esp + 0x10]
shr ebx, 8
movzx edi, bl
xor esi, dword [edi*4 + 0x4538c0]
movzx edi, byte [esp + 0x10]
xor esi, dword [edi*4 + 0x4534c0]
xor edx, dword [esp + 0x10]
mov dword [eax + 0xb8], esi
mov dword [esp + 0x14], edx
mov ebx, edx
shr ebx, 0x10
movzx edi, bl
mov esi, edx
shr esi, 0x18
mov esi, dword [esi*4 + 0x4540c0]
xor esi, dword [edi*4 + 0x453cc0]
mov ebx, edx
shr ebx, 8
movzx edi, bl
xor esi, dword [edi*4 + 0x4538c0]
movzx edx, dl
xor esi, dword [edx*4 + 0x4534c0]
mov edx, dword [esp + 0x18]
xor edx, dword [esp + 0x14]
mov dword [eax + 0xbc], esi
mov ebx, edx
shr ebx, 0x10
movzx edi, bl
mov esi, edx
shr esi, 0x18
mov esi, dword [esi*4 + 0x4540c0]
xor esi, dword [edi*4 + 0x453cc0]
mov ebx, edx
shr ebx, 8
movzx edi, bl
xor esi, dword [edi*4 + 0x4538c0]
mov dword [esp + 0x18], edx
movzx edx, dl
xor esi, dword [edx*4 + 0x4534c0]
mov edx, dword [esp + 0x1c]
xor edx, dword [esp + 0x18]
mov dword [eax + 0xa0], esi
mov ebx, edx
shr ebx, 0x10
mov esi, edx
shr esi, 0x18
mov esi, dword [esi*4 + 0x4540c0]
movzx edi, bl
xor esi, dword [edi*4 + 0x453cc0]
mov ebx, edx
shr ebx, 8
movzx edi, bl
xor esi, dword [edi*4 + 0x4538c0]
mov dword [esp + 0x1c], edx
movzx edx, dl
xor esi, dword [edx*4 + 0x4534c0]
mov edx, dword [esp + 0x20]
xor edx, dword [esp + 0x1c]
mov dword [eax + 0xa4], esi
mov ebx, edx
mov esi, edx
shr esi, 0x18
mov esi, dword [esi*4 + 0x4540c0]
shr ebx, 0x10
movzx edi, bl
xor esi, dword [edi*4 + 0x453cc0]
mov ebx, edx
shr ebx, 8
movzx edi, bl
xor esi, dword [edi*4 + 0x4538c0]
xor ecx, edx
movzx edi, dl
xor esi, dword [edi*4 + 0x4534c0]
mov dword [esp + 0x20], edx
mov edx, ecx
shr edx, 0x10
movzx edi, dl
mov dword [eax + 0xa8], esi
mov edx, ecx
shr edx, 8
mov esi, ecx
shr esi, 0x18
movzx ebx, dl
add esi, esi
add edi, edi
add ebx, ebx
add esi, esi
add edi, edi
add ebx, ebx
movzx edx, cl
add edx, edx
mov ebp, dword [edx + edx + 0x4534c0]
xor ebp, dword [ebx + 0x4538c0]
add edx, edx
xor ebp, dword [edi + 0x453cc0]
xor ebp, dword [esi + 0x4540c0]
mov dword [eax + 0xac], ebp
mov edx, dword [edx + 0x4510c0]
xor edx, dword [ebx + str.cwko0]
xor edx, dword [edi + 0x4508c0]
xor edx, dword [esi + 0x450cc0]
xor edx, dword [0x44f484]
xor dword [esp + 0x10], edx
mov ebx, edx
mov esi, edx
shr esi, 0x18
mov esi, dword [esi*4 + 0x4540c0]
shr ebx, 0x10
movzx edi, bl
xor esi, dword [edi*4 + 0x453cc0]
mov ebx, edx
mov dword [esp + 0x28], edx
shr ebx, 8
movzx edx, dl
movzx edi, bl
xor esi, dword [edi*4 + 0x4538c0]
mov edi, dword [esp + 0x20]
xor esi, dword [edx*4 + 0x4534c0]
mov edx, dword [esp + 0x10]
xor esi, dword [eax + 0xb8]
xor dword [esp + 0x14], edx
mov edx, dword [esp + 0x14]
xor dword [esp + 0x18], edx
mov edx, dword [esp + 0x18]
xor dword [esp + 0x1c], edx
xor edi, dword [esp + 0x1c]
mov dword [eax + 0x90], esi
xor esi, dword [eax + 0xbc]
xor ecx, edi
mov dword [eax + 0x94], esi
xor esi, dword [eax + 0xa0]
mov edx, ecx
mov dword [eax + 0x98], esi
xor esi, dword [eax + 0xa4]
shr edx, 0x18
mov dword [eax + 0x9c], esi
xor esi, dword [eax + 0xa8]
mov ebx, ecx
mov dword [eax + 0x80], esi
xor esi, ebp
mov dword [eax + 0x84], esi
mov esi, dword [edx*4 + 0x450cc0]
shr ebx, 0x10
mov dword [esp + 0x20], edi
movzx edi, bl
xor esi, dword [edi*4 + 0x4508c0]
mov edx, ecx
shr edx, 8
movzx edx, dl
xor esi, dword [edx*4 + str.cwko0]
movzx edx, cl
xor esi, dword [edx*4 + 0x4510c0]
xor esi, dword [0x44f488]
mov edx, esi
xor dword [esp + 0x10], edx
mov dword [esp + 0x28], esi
mov ebx, edx
shr ebx, 0x10
shr esi, 0x18
mov esi, dword [esi*4 + 0x4540c0]
movzx edi, bl
xor esi, dword [edi*4 + 0x453cc0]
mov ebx, edx
shr ebx, 8
movzx edi, bl
xor esi, dword [edi*4 + 0x4538c0]
movzx edx, dl
xor esi, dword [edx*4 + 0x4534c0]
mov edx, dword [esp + 0x10]
xor esi, dword [eax + 0x90]
mov dword [eax + 0x88], esi
xor esi, dword [eax + 0x94]
xor dword [esp + 0x14], edx
mov edx, dword [esp + 0x14]
xor dword [esp + 0x18], edx
mov edx, dword [esp + 0x18]
xor dword [esp + 0x1c], edx
mov edi, dword [esp + 0x20]
xor edi, dword [esp + 0x1c]
mov dword [eax + 0x8c], esi
xor esi, dword [eax + 0x98]
xor ecx, edi
mov dword [eax + 0x70], esi
xor esi, dword [eax + 0x9c]
mov dword [esp + 0x20], edi
mov dword [eax + 0x74], esi
xor esi, dword [eax + 0x80]
mov edx, ecx
mov dword [eax + 0x78], esi
xor esi, dword [eax + 0x84]
shr edx, 0x18
mov dword [eax + 0x7c], esi
mov esi, dword [edx*4 + 0x450cc0]
mov ebx, ecx
shr ebx, 0x10
movzx edi, bl
xor esi, dword [edi*4 + 0x4508c0]
mov edx, ecx
shr edx, 8
movzx edx, dl
xor esi, dword [edx*4 + str.cwko0]
movzx edx, cl
xor esi, dword [edx*4 + 0x4510c0]
xor esi, dword [0x44f48c]
mov edx, esi
xor dword [esp + 0x10], edx
mov dword [esp + 0x28], esi
mov ebx, edx
shr esi, 0x18
mov esi, dword [esi*4 + 0x4540c0]
shr ebx, 0x10
movzx edi, bl
xor esi, dword [edi*4 + 0x453cc0]
mov ebx, edx
shr ebx, 8
movzx edx, dl
movzx edi, bl
xor esi, dword [edi*4 + 0x4538c0]
mov edi, dword [esp + 0x20]
xor esi, dword [edx*4 + 0x4534c0]
mov edx, dword [esp + 0x10]
xor esi, dword [eax + 0x88]
xor dword [esp + 0x14], edx
mov edx, dword [esp + 0x14]
xor dword [esp + 0x18], edx
mov edx, dword [esp + 0x18]
xor dword [esp + 0x1c], edx
xor edi, dword [esp + 0x1c]
mov dword [eax + 0x60], esi
xor esi, dword [eax + 0x8c]
xor ecx, edi
mov dword [eax + 0x64], esi
xor esi, dword [eax + 0x70]
mov edx, ecx
mov dword [eax + 0x68], esi
xor esi, dword [eax + 0x74]
shr edx, 0x18
mov dword [eax + 0x6c], esi
xor esi, dword [eax + 0x78]
mov ebx, ecx
mov dword [eax + 0x50], esi
xor esi, dword [eax + 0x7c]
shr ebx, 0x10
mov dword [eax + 0x54], esi
mov esi, dword [edx*4 + 0x450cc0]
mov dword [esp + 0x20], edi
mov edx, ecx
movzx edi, bl
xor esi, dword [edi*4 + 0x4508c0]
shr edx, 8
movzx edx, dl
xor esi, dword [edx*4 + str.cwko0]
movzx edx, cl
xor esi, dword [edx*4 + 0x4510c0]
xor esi, dword [0x44f490]
mov edx, esi
xor dword [esp + 0x10], edx
mov dword [esp + 0x28], esi
shr esi, 0x18
mov esi, dword [esi*4 + 0x4540c0]
mov ebx, edx
shr ebx, 0x10
movzx edi, bl
xor esi, dword [edi*4 + 0x453cc0]
mov ebx, edx
movzx edx, dl
shr ebx, 8
movzx edi, bl
xor esi, dword [edi*4 + 0x4538c0]
mov edi, dword [esp + 0x20]
xor esi, dword [edx*4 + 0x4534c0]
mov edx, dword [esp + 0x10]
xor esi, dword [eax + 0x60]
xor dword [esp + 0x14], edx
mov edx, dword [esp + 0x14]
xor dword [esp + 0x18], edx
mov edx, dword [esp + 0x18]
xor dword [esp + 0x1c], edx
xor edi, dword [esp + 0x1c]
mov dword [eax + 0x58], esi
xor esi, dword [eax + 0x64]
xor ecx, edi
mov dword [eax + 0x5c], esi
xor esi, dword [eax + 0x68]
mov edx, ecx
mov dword [eax + 0x40], esi
xor esi, dword [eax + 0x6c]
shr edx, 0x18
mov dword [eax + 0x44], esi
xor esi, dword [eax + 0x50]
mov ebx, ecx
mov dword [eax + 0x48], esi
xor esi, dword [eax + 0x54]
shr ebx, 0x10
mov dword [eax + 0x4c], esi
mov esi, dword [edx*4 + 0x450cc0]
mov dword [esp + 0x20], edi
movzx edi, bl
xor esi, dword [edi*4 + 0x4508c0]
mov edx, ecx
shr edx, 8
movzx edx, dl
xor esi, dword [edx*4 + str.cwko0]
movzx edx, cl
xor esi, dword [edx*4 + 0x4510c0]
xor esi, dword [0x44f494]
mov edx, esi
xor dword [esp + 0x10], edx
mov dword [esp + 0x28], esi
mov ebx, edx
shr esi, 0x18
mov esi, dword [esi*4 + 0x4540c0]
shr ebx, 0x10
movzx edi, bl
xor esi, dword [edi*4 + 0x453cc0]
mov ebx, edx
shr ebx, 8
movzx edi, bl
xor esi, dword [edi*4 + 0x4538c0]
movzx edx, dl
xor esi, dword [edx*4 + 0x4534c0]
mov edx, dword [esp + 0x10]
xor esi, dword [eax + 0x58]
xor dword [esp + 0x14], edx
mov edx, dword [esp + 0x14]
xor dword [esp + 0x18], edx
mov edx, dword [esp + 0x18]
mov dword [eax + 0x30], esi
xor esi, dword [eax + 0x5c]
mov dword [eax + 0x34], esi
xor esi, dword [eax + 0x40]
xor dword [esp + 0x1c], edx
mov dword [eax + 0x38], esi
xor esi, dword [eax + 0x44]
mov edi, dword [esp + 0x20]
xor edi, dword [esp + 0x1c]
mov dword [eax + 0x3c], esi
xor esi, dword [eax + 0x48]
xor ecx, edi
mov dword [eax + 0x20], esi
xor esi, dword [eax + 0x4c]
mov edx, ecx
mov dword [eax + 0x24], esi
shr edx, 0x18
mov esi, dword [edx*4 + 0x450cc0]
mov ebx, ecx
shr ebx, 0x10
mov edx, ecx
shr edx, 8
movzx edx, dl
mov dword [esp + 0x20], edi
movzx edi, bl
xor esi, dword [edi*4 + 0x4508c0]
xor esi, dword [edx*4 + str.cwko0]
movzx edx, cl
xor esi, dword [edx*4 + 0x4510c0]
xor esi, dword [0x44f498]
mov edx, esi
xor dword [esp + 0x10], edx
mov ebx, edx
mov dword [esp + 0x28], esi
shr esi, 0x18
mov esi, dword [esi*4 + 0x4540c0]
shr ebx, 0x10
movzx edi, bl
xor esi, dword [edi*4 + 0x453cc0]
mov ebx, edx
movzx edx, dl
shr ebx, 8
movzx edi, bl
xor esi, dword [edi*4 + 0x4538c0]
mov edi, dword [esp + 0x20]
xor esi, dword [edx*4 + 0x4534c0]
mov edx, dword [esp + 0x10]
xor esi, dword [eax + 0x30]
xor dword [esp + 0x14], edx
mov edx, dword [esp + 0x14]
xor dword [esp + 0x18], edx
mov edx, dword [esp + 0x18]
xor dword [esp + 0x1c], edx
xor edi, dword [esp + 0x1c]
mov dword [eax + 0x28], esi
xor esi, dword [eax + 0x34]
xor ecx, edi
mov dword [eax + 0x2c], esi
xor esi, dword [eax + 0x38]
mov ebx, ecx
mov dword [eax + 0x10], esi
xor esi, dword [eax + 0x3c]
mov edx, ecx
mov dword [eax + 0x14], esi
xor esi, dword [eax + 0x20]
shr edx, 0x18
mov dword [eax + 0x18], esi
xor esi, dword [eax + 0x24]
shr ebx, 0x10
mov dword [eax + 0x1c], esi
mov edx, dword [edx*4 + 0x450cc0]
movzx esi, bl
xor edx, dword [esi*4 + 0x4508c0]
mov ebx, ecx
shr ebx, 8
movzx esi, bl
xor edx, dword [esi*4 + str.cwko0]
movzx ecx, cl
xor edx, dword [ecx*4 + 0x4510c0]
mov ecx, dword [esp + 0x10]
xor edx, dword [0x44f49c]
xor ecx, edx
mov edx, dword [esp + 0x14]
xor edx, ecx
mov dword [eax], ecx
mov ecx, dword [esp + 0x18]
mov dword [eax + 4], edx
xor ecx, edx
mov edx, dword [esp + 0x1c]
pop edi
pop esi
xor edx, ecx
mov dword [eax + 0xf0], 0
pop ebp
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
mov byte [eax + 0xf0], 0xc0
xor eax, eax
pop ebx
add esp, 0x1c
ret