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

Disassembly:
sub esp, 0x530
push ebx
mov ebx, ecx
xor edx, edx
push ebp
mov eax, dword [ebx + 0xafc]
mov ecx, dword [ebx + 0xb00]
mov dword [esp + 0x2c], eax
mov eax, dword [ebx + 0xb04]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0xb10]
mov dword [esp + 0x10], ecx
mov ecx, dword [ebx + 0xb0c]
mov dword [esp + 0x18], eax
mov eax, dword [ebx + 0xb18]
mov dword [esp + 0x24], ecx
mov ecx, dword [ebx + 0xb14]
mov dword [esp + 0x34], eax
mov eax, dword [ebx + 0xb24]
mov dword [esp + 0x14], ecx
mov ecx, dword [ebx + 0xb1c]
mov dword [esp + 0x28], eax
mov eax, 1
push esi
push edi
xor ebp, ebp
mov dword [esp + 0x38], ecx
mov dword [esp + 0x28], edx
mov dword [esp + 0x24], edx
mov dword [esp + 0x240], eax
mov dword [esp + 0x244], edx
mov dword [esp + 0x248], edx
mov dword [esp + 0x24c], edx
mov dword [esp + 0x250], edx
mov dword [esp + 0x254], edx
mov dword [esp + 0x258], edx
mov dword [esp + 0x25c], edx
mov dword [esp + 0x260], edx
mov dword [esp + 0x264], edx
mov dword [esp + 0x268], edx
mov dword [esp + 0x26c], edx
mov dword [esp + 0x270], edx
mov dword [esp + 0x274], edx
mov dword [esp + 0x278], edx
mov dword [esp + 0x27c], eax
mov dword [esp + 0x280], edx
mov dword [esp + 0x284], eax
mov dword [esp + 0x288], edx
mov dword [esp + 0x28c], edx
mov dword [esp + 0x290], edx
mov dword [esp + 0x294], edx
mov dword [esp + 0x298], edx
mov dword [esp + 0x29c], edx
mov dword [esp + 0x2a0], edx
mov dword [esp + 0x2a4], edx
mov dword [esp + 0x2a8], edx
mov dword [esp + 0x2ac], edx
mov dword [esp + 0x2b0], edx
mov dword [esp + 0x2b4], edx
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2bc], edx
mov dword [esp + 0x2c0], edx
mov dword [esp + 0x2c4], edx
mov dword [esp + 0x2c8], eax
mov dword [esp + 0x2cc], edx
mov dword [esp + 0x2d0], edx
mov dword [esp + 0x2d4], edx
mov dword [esp + 0x2d8], edx
mov dword [esp + 0x2dc], edx
mov dword [esp + 0x2e0], edx
mov dword [esp + 0x2e4], edx
mov dword [esp + 0x2e8], edx
mov dword [esp + 0x2ec], edx
mov dword [esp + 0x2f0], edx
mov dword [esp + 0x2f4], eax
mov dword [esp + 0x2f8], edx
mov dword [esp + 0x2fc], edx
mov dword [esp + 0x300], edx
mov dword [esp + 0x304], edx
mov dword [esp + 0x308], edx
mov dword [esp + 0x30c], eax
mov dword [esp + 0x310], edx
mov dword [esp + 0x314], edx
mov dword [esp + 0x318], edx
mov dword [esp + 0x31c], edx
mov dword [esp + 0x320], edx
mov dword [esp + 0x324], edx
mov dword [esp + 0x328], edx
mov dword [esp + 0x32c], edx
mov dword [esp + 0x330], eax
mov dword [esp + 0x334], edx
mov dword [esp + 0x338], edx
mov dword [esp + 0x33c], edx
mov dword [esp + 0x340], eax
mov dword [esp + 0x344], edx
mov dword [esp + 0x348], edx
mov dword [esp + 0x34c], edx
mov dword [esp + 0x350], edx
mov dword [esp + 0x354], edx
mov dword [esp + 0x358], edx
mov dword [esp + 0x35c], edx
mov dword [esp + 0x360], edx
mov dword [esp + 0x364], eax
mov dword [esp + 0x368], edx
mov dword [esp + 0x36c], edx
mov dword [esp + 0x370], edx
mov dword [esp + 0x374], edx
mov dword [esp + 0x378], edx
mov dword [esp + 0x37c], edx
mov dword [esp + 0x380], edx
mov dword [esp + 0x384], edx
mov dword [esp + 0x388], eax
mov dword [esp + 0x38c], edx
mov dword [esp + 0x390], edx
mov dword [esp + 0x394], edx
mov dword [esp + 0x398], edx
mov dword [esp + 0x39c], edx
mov dword [esp + 0x3a0], edx
mov dword [esp + 0x3a4], edx
mov dword [esp + 0x3a8], edx
mov dword [esp + 0x3ac], eax
mov dword [esp + 0x3b0], edx
mov dword [esp + 0x3b4], edx
mov dword [esp + 0x3b8], edx
mov dword [esp + 0x3bc], edx
mov dword [esp + 0x3c0], edx
mov dword [esp + 0x3c4], edx
mov dword [esp + 0x3c8], edx
mov dword [esp + 0x3cc], edx
mov dword [esp + 0x3d0], eax
mov dword [esp + 0x3d4], edx
mov dword [esp + 0x3d8], edx
mov dword [esp + 0x3dc], edx
mov dword [esp + 0x3e0], edx
mov dword [esp + 0x3e4], edx
mov dword [esp + 0x3e8], edx
mov dword [esp + 0x3ec], edx
mov dword [esp + 0x3f0], edx
mov dword [esp + 0x3f4], eax
mov dword [esp + 0x3f8], edx
mov dword [esp + 0x3fc], edx
mov dword [esp + 0x400], edx
mov dword [esp + 0x404], edx
mov dword [esp + 0x408], edx
mov dword [esp + 0x40c], edx
mov dword [esp + 0x410], edx
mov dword [esp + 0x414], edx
mov dword [esp + 0x418], eax
mov dword [esp + 0x41c], edx
mov dword [esp + 0x420], edx
mov dword [esp + 0x424], edx
mov dword [esp + 0x428], edx
mov dword [esp + 0x42c], edx
mov dword [esp + 0x430], edx
mov dword [esp + 0x434], edx
mov dword [esp + 0x438], edx
mov dword [esp + 0x43c], eax
mov dword [esp + 0x440], eax
mov dword [esp + 0x444], eax
mov dword [esp + 0x448], eax
mov dword [esp + 0x44c], eax
mov dword [esp + 0x450], eax
mov dword [esp + 0x454], eax
mov dword [esp + 0x458], eax
mov dword [esp + 0x45c], eax
mov dword [esp + 0x460], edx
mov dword [esp + 0x464], edx
mov dword [esp + 0x468], edx
mov dword [esp + 0x46c], edx
mov dword [esp + 0x470], edx
mov dword [esp + 0x474], edx
mov dword [esp + 0x478], eax
mov dword [esp + 0x47c], edx
mov dword [esp + 0x480], edx
mov dword [esp + 0x484], edx
mov dword [esp + 0x488], edx
mov dword [esp + 0x48c], edx
mov dword [esp + 0x490], edx
mov dword [esp + 0x494], eax
mov dword [esp + 0x498], edx
mov dword [esp + 0x49c], edx
mov dword [esp + 0x4a0], edx
mov dword [esp + 0x4a4], edx
mov dword [esp + 0x4a8], edx
mov dword [esp + 0x4ac], edx
mov dword [esp + 0x4b0], eax
mov dword [esp + 0x4b4], edx
mov dword [esp + 0x4b8], edx
mov dword [esp + 0x4bc], edx
mov dword [esp + 0x4c0], edx
mov dword [esp + 0x4c4], edx
mov dword [esp + 0x4c8], edx
mov dword [esp + 0x4cc], eax
mov dword [esp + 0x4d0], edx
mov dword [esp + 0x4d4], edx
mov dword [esp + 0x4d8], edx
mov dword [esp + 0x4dc], edx
mov dword [esp + 0x4e0], edx
mov dword [esp + 0x4e4], edx
mov dword [esp + 0x4e8], eax
mov dword [esp + 0x4ec], edx
mov dword [esp + 0x4f0], edx
mov dword [esp + 0x4f4], edx
mov dword [esp + 0x4f8], edx
mov dword [esp + 0x4fc], edx
mov dword [esp + 0x500], edx
mov dword [esp + 0x504], eax
mov dword [esp + 0x508], edx
mov dword [esp + 0x50c], edx
mov dword [esp + 0x510], edx
mov dword [esp + 0x514], edx
mov dword [esp + 0x518], edx
mov dword [esp + 0x51c], edx
mov dword [esp + 0x520], eax
mov dword [esp + 0x524], edx
mov dword [esp + 0x528], edx
mov dword [esp + 0x52c], edx
mov dword [esp + 0x530], edx
mov dword [esp + 0x534], edx
mov dword [esp + 0x538], edx
mov dword [esp + 0x53c], edx
mov dword [esp + 0x140], eax
mov dword [esp + 0x144], edx
mov dword [esp + 0x148], edx
mov dword [esp + 0x14c], edx
mov dword [esp + 0x150], edx
mov dword [esp + 0x154], edx
mov dword [esp + 0x158], edx
mov dword [esp + 0x15c], eax
mov dword [esp + 0x160], edx
mov dword [esp + 0x164], eax
mov dword [esp + 0x168], edx
mov dword [esp + 0x16c], edx
mov dword [esp + 0x170], edx
mov dword [esp + 0x174], edx
mov dword [esp + 0x178], eax
mov dword [esp + 0x17c], edx
mov dword [esp + 0x180], edx
mov dword [esp + 0x184], edx
mov dword [esp + 0x188], eax
mov dword [esp + 0x18c], edx
mov dword [esp + 0x190], edx
mov dword [esp + 0x194], eax
mov dword [esp + 0x198], edx
mov dword [esp + 0x19c], edx
mov dword [esp + 0x1a0], edx
mov dword [esp + 0x1a4], edx
mov dword [esp + 0x1a8], edx
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], eax
mov dword [esp + 0x1b4], edx
mov dword [esp + 0x1b8], edx
mov dword [esp + 0x1bc], edx
mov dword [esp + 0x1c0], edx
mov dword [esp + 0x1c4], edx
mov dword [esp + 0x1c8], edx
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x1d4], edx
mov dword [esp + 0x1d8], edx
mov dword [esp + 0x1dc], edx
mov dword [esp + 0x1e0], edx
mov dword [esp + 0x1e4], edx
mov dword [esp + 0x1e8], eax
mov dword [esp + 0x1ec], edx
mov dword [esp + 0x1f0], edx
mov dword [esp + 0x1f4], eax
mov dword [esp + 0x1f8], edx
mov dword [esp + 0x1fc], edx
mov dword [esp + 0x200], edx
mov dword [esp + 0x204], eax
mov dword [esp + 0x208], edx
mov dword [esp + 0x20c], edx
mov dword [esp + 0x210], edx
mov dword [esp + 0x214], edx
mov dword [esp + 0x218], eax
mov dword [esp + 0x21c], edx
mov dword [esp + 0x220], eax
mov dword [esp + 0x224], edx
mov dword [esp + 0x228], edx
mov dword [esp + 0x22c], edx
mov dword [esp + 0x230], edx
mov dword [esp + 0x234], edx
mov dword [esp + 0x238], edx
mov dword [esp + 0x23c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], edx
mov dword [esp + 0x6c], edx
mov dword [esp + 0x70], edx
mov dword [esp + 0x74], edx
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], edx
mov dword [esp + 0x80], edx
mov dword [esp + 0x84], edx
mov dword [esp + 0x88], edx
mov dword [esp + 0x8c], edx
mov dword [esp + 0x90], edx
mov dword [esp + 0x94], edx
mov dword [esp + 0x98], edx
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], edx
mov dword [esp + 0xa4], edx
mov dword [esp + 0xa8], edx
mov dword [esp + 0xac], edx
mov dword [esp + 0xb0], edx
mov dword [esp + 0xb4], edx
mov dword [esp + 0xb8], edx
mov dword [esp + 0xbc], edx
mov dword [esp + 0xc0], edx
mov dword [esp + 0xc4], edx
mov dword [esp + 0xc8], edx
mov dword [esp + 0xcc], edx
mov dword [esp + 0xd0], edx
mov dword [esp + 0xd4], edx
mov dword [esp + 0xd8], edx
mov dword [esp + 0xdc], edx
mov ecx, dword [esp + 0x544]
mov dword [esp + 0xe0], edx
dec ecx
mov dword [esp + 0xe4], edx
cmp ecx, 4
mov dword [esp + 0xe8], edx
mov dword [esp + 0xec], edx
mov dword [esp + 0xf0], edx
mov dword [esp + 0xf4], edx
mov dword [esp + 0xf8], edx
mov dword [esp + 0xfc], edx
mov dword [esp + 0x100], edx
mov dword [esp + 0x104], edx
mov dword [esp + 0x108], edx
mov dword [esp + 0x10c], edx
mov dword [esp + 0x110], edx
mov dword [esp + 0x114], edx
mov dword [esp + 0x118], edx
mov dword [esp + 0x11c], edx
mov dword [esp + 0x120], edx
mov dword [esp + 0x124], edx
mov dword [esp + 0x128], edx
mov dword [esp + 0x12c], edx
mov dword [esp + 0x130], edx
mov dword [esp + 0x134], edx
mov dword [esp + 0x138], edx
mov dword [esp + 0x13c], edx
ja case.default.0x41df04
jmp dword [ecx*4 + 0x41e124]
mov ecx, 0x40
lea esi, [esp + 0x240]
jmp 0x41df4c
mov ecx, 0x40
lea esi, [esp + 0x340]
jmp 0x41df4c
mov ecx, 0x40
lea esi, [esp + 0x440]
jmp 0x41df4c
mov ecx, 0x40
lea esi, [esp + 0x140]
jmp 0x41df4c
mov ecx, 0x40
lea esi, [esp + 0x40]
lea edi, [esp + 0x40]
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebx + 0x114]
mov esi, dword [ecx + 4]
add ecx, 4
inc ebp
cmp esi, edx
jne 0x41df58
mov dword [ebx + ebp*4 + 0x114], eax
lea eax, [esp + 0x140]
mov dword [esp + 0x10], 8
xor ecx, ecx
cmp ebp, 8
setge cl
dec ecx
mov edi, eax
and ebp, ecx
add eax, 0x20
mov ecx, ebp
shl ecx, 5
inc ebp
lea esi, [esp + ecx + 0x40]
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x10]
dec ecx
mov dword [esp + 0x10], ecx
jne 0x41df79
mov eax, dword [ebx + 0xfc]
mov ecx, dword [eax + 0x74]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x1c]
cmp ecx, eax
jge 0x41e09e
sub eax, ecx
mov dword [esp + 0x1c], eax
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x2c]
cmp ecx, eax
jge 0x41e059
sub eax, ecx
mov dword [esp + 0x20], eax
mov ebp, dword [esp + 0x28]
mov eax, dword [esp + 0x24]
lea ecx, [ebp + eax*8]
cmp dword [esp + ecx*4 + 0x140], edx
je 0x41e028
mov esi, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov eax, dword [ebx + 0x68]
mov edi, dword [esp + 0x18]
mov cl, byte [ecx + esi]
mov byte [eax + edi], cl
mov ecx, dword [esp + 0x10]
mov eax, dword [ebx + 0x68]
mov cl, byte [ecx + esi + 1]
mov byte [eax + edi + 1], cl
mov ecx, dword [esp + 0x10]
mov eax, dword [ebx + 0x68]
mov cl, byte [ecx + esi + 2]
mov byte [eax + edi + 2], cl
jmp 0x41e030
mov edi, dword [esp + 0x18]
mov esi, dword [esp + 0x14]
inc ebp
mov eax, ebp
sub eax, 8
neg eax
sbb eax, eax
add edi, 3
and eax, ebp
add esi, 3
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x20]
dec eax
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], esi
mov dword [esp + 0x20], eax
jne 0x41dfde
mov ecx, dword [esp + 0x38]
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x24]
add esi, ecx
inc eax
mov dword [esp + 0x14], esi
mov ecx, eax
sub ecx, 8
neg ecx
sbb ecx, ecx
and ecx, eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x34]
add eax, ecx
mov ecx, dword [esp + 0x18]
add ecx, eax
mov eax, dword [esp + 0x1c]
dec eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
jne 0x41dfc8
mov esi, dword [ebx + 0x10c]
mov ecx, dword [ebx + 0x110]
inc esi
mov eax, esi
mov dword [ebx + 0x10c], esi
cmp eax, ecx
jne 0x41e114
mov dword [ebx + 0xf4], edx
mov ecx, 9
xor eax, eax
lea edi, [ebx + 0x114]
mov dword [ebx + 0xafc], edx
mov dword [ebx + 0xb00], edx
mov dword [ebx + 0xb04], edx
mov dword [ebx + 0xb08], edx
mov dword [ebx + 0xb0c], edx
mov dword [ebx + 0xb10], edx
mov dword [ebx + 0xb14], edx
mov dword [ebx + 0xb18], edx
mov dword [ebx + 0xb1c], edx
mov dword [ebx + 0xb20], edx
mov dword [ebx + 0xb24], edx
rep stosd dword es:[edi], eax
mov dword [ebx + 0xb38], edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x530
ret 4