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

Disassembly:
xor ecx, ecx
lea eax, [ebx + 1]
cmp ecx, dword [esp]
je 0x204033e6
mov ebx, eax
mov eax, dword [esp + 4]
mov edi, dword [eax + ebx*4]
add edi, dword [esp + 0x10]
mov ecx, esi
call fcn.20404586
mov ecx, edi
call fcn.204045c6
test eax, eax
je 0x204033b2
nop
nop
nop
nop
nop
nop
nop
movsx ecx, byte [edi + eax]
mov word [esp + eax*2 + 0x54], cx
dec eax
jne 0x204033a6
movsx eax, byte [edi]
mov word [esp + 0x54], ax
mov ecx, esi
call fcn.204045f6
test eax, eax
je 0x20403376
mov ecx, dword [esp + 8]
mov edx, dword [ecx + 0x28]
xor ecx, ecx
mov edi, esi
nop
nop
nop
nop
nop
nop
imul ecx, edx
movzx ebp, word [edi]
add ecx, ebp
add edi, 2
dec eax
jne 0x204033d6
jmp 0x20403378
mov ecx, dword [esp + 0x14]
add dword [esp + 0x28], ecx
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x18]
add esi, eax
mov edx, dword [esp + 0xc]
add edx, eax
movzx eax, word [esi + ebx*2]
mov eax, dword [edx + eax*4]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 8]
mov eax, dword [eax + 0x4c]
mov dword [esp], eax
mov eax, dword [ecx + 0x3c]
mov eax, dword [ecx + eax + 0x78]
mov edx, dword [ecx + eax + 0x20]
add edx, ecx
mov dword [esp + 4], edx
mov edx, dword [ecx + eax + 0x1c]
mov dword [esp + 0xc], edx
mov eax, dword [ecx + eax + 0x24]
mov dword [esp + 0x18], eax
xor eax, eax
lea esi, [esp + 0x54]
jmp 0x20403450
xor ecx, ecx
lea eax, [ebx + 1]
cmp ecx, dword [esp]
je 0x204034b6
mov ebx, eax
mov eax, dword [esp + 4]
mov edi, dword [eax + ebx*4]
add edi, dword [esp + 0x14]
mov ecx, esi
call fcn.20404586
mov ecx, edi
call fcn.204045c6
test eax, eax
je 0x20403482
nop
nop
nop
nop
nop
nop
nop
movsx ecx, byte [edi + eax]
mov word [esp + eax*2 + 0x54], cx
dec eax
jne 0x20403476
movsx eax, byte [edi]
mov word [esp + 0x54], ax
mov ecx, esi
call fcn.204045f6
test eax, eax
je 0x20403446
mov ecx, dword [esp + 8]
mov edx, dword [ecx + 0x28]
xor ecx, ecx
mov edi, esi
nop
nop
nop
nop
nop
nop
imul ecx, edx
movzx ebp, word [edi]
add ecx, ebp
add edi, 2
dec eax
jne 0x204034a6
jmp 0x20403448
mov ecx, dword [esp + 0x14]
add dword [esp + 0x30], ecx
mov eax, dword [esp + 0x18]
add eax, ecx
mov edx, dword [esp + 0xc]
add edx, ecx
movzx eax, word [eax + ebx*2]
mov eax, dword [edx + eax*4]
or byte [ecx - 0x74b7dbbc], 0x44
and al, 8
mov eax, dword [eax + 0x84]
mov dword [esp], eax
mov eax, dword [ecx + 0x3c]
mov eax, dword [ecx + eax + 0x78]
mov edx, dword [ecx + eax + 0x20]
add edx, ecx
mov dword [esp + 4], edx
mov edx, dword [ecx + eax + 0x1c]
mov dword [esp + 0xc], edx
mov eax, dword [ecx + eax + 0x24]
mov dword [esp + 0x18], eax
xor eax, eax
lea esi, [esp + 0x54]
jmp 0x20403520
xor ecx, ecx
lea eax, [ebx + 1]
cmp ecx, dword [esp]
je 0x20403586
mov ebx, eax
mov eax, dword [esp + 4]
mov edi, dword [eax + ebx*4]
add edi, dword [esp + 0x14]
mov ecx, esi
call fcn.20404586
mov ecx, edi
call fcn.204045c6
test eax, eax
je 0x20403552
nop
nop
nop
nop
nop
nop
nop
movsx ecx, byte [edi + eax]
mov word [esp + eax*2 + 0x54], cx
dec eax
jne 0x20403546
movsx eax, byte [edi]
mov word [esp + 0x54], ax
mov ecx, esi
call fcn.204045f6
test eax, eax
je 0x20403516
mov ecx, dword [esp + 8]
mov edx, dword [ecx + 0x28]
xor ecx, ecx
mov edi, esi
nop
nop
nop
nop
nop
nop
imul ecx, edx
movzx ebp, word [edi]
add ecx, ebp
add edi, 2
add cl, byte [eax + 0x75]
invalid
jmp 0x20403518
mov eax, dword [esp + 0x14]
add dword [esp + 0x2c], eax
mov edx, dword [esp + 0x18]
add edx, eax
mov ecx, dword [esp + 0xc]
add ecx, eax
movzx eax, word [edx + ebx*2]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 8]
mov eax, dword [eax + 0xb0]
mov dword [esp], eax
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x3c]
mov eax, dword [ecx + eax + 0x78]
mov edx, dword [ecx + eax + 0x20]
add edx, ecx
mov dword [esp + 4], edx
mov edx, dword [ecx + eax + 0x1c]
mov dword [esp + 0xc], edx
mov eax, dword [ecx + eax + 0x24]
mov dword [esp + 0x18], eax
xor eax, eax
lea esi, [esp + 0x54]
jmp 0x204035f0
xor ecx, ecx
lea eax, [ebx + 1]
cmp ecx, dword [esp]
je 0x20403656
mov ebx, eax
mov eax, dword [esp + 4]
mov edi, dword [eax + ebx*4]
add edi, dword [esp + 0x10]
mov ecx, esi
call fcn.20404586
mov ecx, edi
call fcn.204045c6
test eax, eax
je 0x20403622
nop
nop
nop
nop
nop
nop
nop
movsx ecx, byte [edi + eax]
mov word [esp + eax*2 + 0x54], cx
dec eax
movsx eax, byte [edi]
mov word [esp + 0x54], ax
mov ecx, esi
call fcn.204045f6
test eax, eax
je 0x204035e6
mov ecx, dword [esp + 8]
mov edx, dword [ecx + 0x28]
xor ecx, ecx
mov edi, esi
nop
nop
nop
nop
nop
nop
imul ecx, edx
movzx ebp, word [edi]
add ecx, ebp
add edi, 2
dec eax
jne 0x20403646
jmp 0x204035e8
mov eax, dword [esp + 0x10]
add dword [esp + 0x24], eax
mov edx, dword [esp + 0x18]
add edx, eax
mov ecx, dword [esp + 0xc]
add ecx, eax
movzx eax, word [edx + ebx*2]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 8]
mov eax, dword [eax + 0xf4]
mov dword [esp], eax
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x3c]
mov eax, dword [ecx + eax + 0x78]
mov edx, dword [ecx + eax + 0x20]
add edx, ecx
mov dword [esp + 4], edx
mov edx, dword [ecx + eax + 0x1c]
mov dword [esp + 0xc], edx
mov eax, dword [ecx + eax + 0x24]
mov dword [esp + 0x18], eax
xor eax, eax
lea esi, [esp + 0x54]
jmp 0x204036c0
xor ecx, ecx
lea eax, [ebx + 1]
cmp ecx, dword [esp]
je 0x20403726
mov ebx, eax
mov eax, dword [esp + 4]
mov edi, dword [eax + ebx*4]
add edi, dword [esp + 0x14]
mov ecx, esi
call fcn.20404586
mov ecx, edi
call fcn.204045c6
test eax, eax
je 0x204036f2
nop
nop
nop
nop
nop
nop
nop
movsx ecx, byte [edi + eax]
mov word [esp + eax*2 + 0x54], cx
dec eax
jne 0x204036e6
movsx eax, byte [edi]
mov word [esp + 0x54], ax
mov ecx, esi
call fcn.204045f6
test eax, eax
je 0x204036b6
mov ecx, dword [esp + 8]
mov edx, dword [ecx + 0x28]
xor ecx, ecx
mov edi, esi
nop
nop
nop
nop
nop
nop
imul ecx, edx
movzx ebp, word [edi]
add ecx, ebp
add edi, 2
dec eax
jne 0x20403716
jmp 0x204036b8
mov ecx, dword [esp + 0x14]
add dword [esp + 0x48], ecx
mov eax, dword [esp + 0x18]
add eax, ecx
mov edx, dword [esp + 0xc]
add edx, ecx
movzx eax, word [eax + ebx*2]
mov eax, dword [edx + eax*4]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 8]
mov eax, dword [eax + 0xa0]
mov dword [esp], eax
mov eax, dword [ecx + 0x3c]
mov eax, dword [ecx + eax + 0x78]
mov edx, dword [ecx + eax + 0x20]
add edx, ecx
mov dword [esp + 4], edx
mov edx, dword [ecx + eax + 0x1c]
mov dword [esp + 0xc], edx
mov eax, dword [ecx + eax + 0x24]
mov dword [esp + 0x18], eax
xor eax, eax
lea esi, [esp + 0x54]
jmp 0x20403790
xor ecx, ecx
lea eax, [ebx + 1]
cmp ecx, dword [esp]
je 0x204037f6
mov ebx, eax
mov eax, dword [esp + 4]
mov edi, dword [eax + ebx*4]
add edi, dword [esp + 0x14]
mov ecx, esi
call fcn.20404586
mov ecx, edi
call fcn.204045c6
test eax, eax
je 0x204037c2
nop
nop
nop
nop
nop
nop
nop
movsx ecx, byte [edi + eax]
mov word [esp + eax*2 + 0x54], cx
dec eax
jne 0x204037b6
movsx eax, byte [edi]
mov word [esp + 0x54], ax
mov ecx, esi
call fcn.204045f6
test eax, eax
je 0x20403786
mov ecx, dword [esp + 8]
mov edx, dword [ecx + 0x28]
xor ecx, ecx
mov edi, esi
nop
nop
nop
nop
nop
nop
imul ecx, edx
movzx ebp, word [edi]
add ecx, ebp
add edi, 2
dec eax
jne 0x204037e6
jmp 0x20403788
mov ecx, dword [esp + 0x14]
add dword [esp + 0x44], ecx
mov eax, dword [esp + 0x18]
add eax, ecx
mov edx, dword [esp + 0xc]
add edx, ecx
movzx eax, word [eax + ebx*2]
mov eax, dword [edx + eax*4]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 8]
mov eax, dword [eax + 0x138]
mov dword [esp], eax
mov eax, dword [ecx + 0x3c]
mov eax, dword [ecx + eax + 0x78]
mov edx, dword [ecx + eax + 0x20]
add edx, ecx
mov dword [esp + 4], edx
mov edx, dword [ecx + eax + 0x1c]
mov dword [esp + 0xc], edx
mov eax, dword [ecx + eax + 0x24]
mov dword [esp + 0x18], eax
xor eax, eax
lea esi, [esp + 0x54]
jmp 0x20403860
xor ecx, ecx
lea eax, [ebx + 1]
cmp ecx, dword [esp]
je 0x204038c6
mov ebx, eax
mov eax, dword [esp + 4]
mov edi, dword [eax + ebx*4]
add edi, dword [esp + 0x14]
mov ecx, esi
call fcn.20404586
mov ecx, edi
call fcn.204045c6
test eax, eax
je 0x20403892
nop
nop
nop
nop
nop
nop
nop
movsx ecx, byte [edi + eax]
mov word [esp + eax*2 + 0x54], cx
dec eax
jne 0x20403886
movsx eax, byte [edi]
mov word [esp + 0x54], ax
mov ecx, esi
call fcn.204045f6
test eax, eax
je 0x20403856
mov ecx, dword [esp + 8]
mov edx, dword [ecx + 0x28]
xor ecx, ecx
mov edi, esi
nop
nop
nop
nop
nop
nop
imul ecx, edx
movzx ebp, word [edi]
add ecx, ebp
add edi, 2
dec eax
jne 0x204038b6
jmp 0x20403858
mov eax, dword [esp + 0x20]
add eax, dword [esp + 0x10]
mov dword [esp + 0x20], eax
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
add eax, ecx
mov edx, dword [esp + 0xc]
add edx, ecx
movzx eax, word [eax + ebx*2]
mov eax, dword [edx + eax*4]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 8]
mov eax, dword [eax + 0x64]
mov dword [esp], eax
mov eax, dword [ecx + 0x3c]
mov eax, dword [ecx + eax + 0x78]
mov edx, dword [ecx + eax + 0x20]
add edx, ecx
mov dword [esp + 4], edx
mov edx, dword [ecx + eax + 0x1c]
mov dword [esp + 0xc], edx
mov eax, dword [ecx + eax + 0x24]
mov dword [esp + 0x38], eax
xor eax, eax
lea esi, [esp + 0x54]
jmp 0x20403930
xor ecx, ecx
lea eax, [ebx + 1]
cmp ecx, dword [esp]
je 0x20403996
mov ebx, eax
mov eax, dword [esp + 4]
mov edi, dword [eax + ebx*4]
add edi, dword [esp + 0x14]
mov ecx, esi
call fcn.20404586
mov ecx, edi
call fcn.204045c6
test eax, eax
je 0x20403962
nop
movsx eax, byte [edi]
mov word [esp + 0x54], ax
mov ecx, esi
call fcn.204045f6
test eax, eax
je 0x20403926
mov ecx, dword [esp + 8]
mov edx, dword [ecx + 0x28]
xor ecx, ecx
mov edi, esi
nop
nop
nop
nop
nop
nop
imul ecx, edx
movzx ebp, word [edi]
add ecx, ebp
add edi, 2
add cl, byte [eax + 0x75]
invalid
jmp 0x20403928
mov ecx, dword [esp + 0x14]
add dword [esp + 0x40], ecx
mov eax, dword [esp + 0x38]
add eax, ecx
mov edx, dword [esp + 0xc]
add edx, ecx
movzx eax, word [eax + ebx*2]
mov eax, dword [edx + eax*4]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 8]
mov eax, dword [eax + 0x34]
mov dword [esp], eax
mov eax, dword [ecx + 0x3c]
mov eax, dword [ecx + eax + 0x78]
mov eax, dword [ecx + eax + 0x20]
add eax, ecx
mov dword [esp + 4], eax
xor ebx, ebx
lea esi, [esp + 0x54]
jmp 0x204039ee
xor ecx, ecx
inc ebx
cmp ecx, dword [esp]
je 0x20403a56
mov eax, dword [esp + 4]
mov edi, dword [eax + ebx*4]
add edi, dword [esp + 0x14]
mov ecx, esi
call fcn.20404586
mov ecx, edi
call fcn.204045c6
test eax, eax
je 0x20403a22
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movsx ecx, byte [edi + eax]
mov word [esp + eax*2 + 0x54], cx
dec eax
jne 0x20403a16
movsx eax, byte [edi]
mov word [esp + 0x54], ax
mov ecx, esi
call fcn.204045f6
test eax, eax
je 0x204039e6
mov ecx, dword [esp + 8]
mov edx, dword [ecx + 0x28]
xor ecx, ecx
mov edi, esi
nop
nop
nop
nop
nop
nop
imul ecx, edx
movzx ebp, word [edi]
add ecx, ebp
add edi, 2
dec eax
jne 0x20403a46
jmp 0x204039e8
mov eax, dword [esp + 0x1c]
add eax, dword [esp + 0x14]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 8]
mov eax, dword [eax + 0x48]
mov dword [esp], eax
mov ecx, dword [esp + 0x10]