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

Disassembly:
sub esp, 0x70
mov eax, dword [0x4d1698]
xor eax, esp
mov dword [esp + 0x6c], eax
push ebx
push ebp
mov ebp, dword [esp + 0x7c]
mov eax, dword [ebp + 0x110]
xor ebx, ebx
push esi
push edi
mov dword [esp + 0x40], edx
cmp eax, ebx
je 0x42090f
mov ecx, dword [eax + 0x10]
cmp edx, ecx
jae 0x420902
mov eax, dword [eax + 4]
jmp 0x42090b
je 0x421607
mov eax, dword [eax + 8]
cmp eax, ebx
jne 0x4208f6
mov eax, dword [edx + 0xc4]
mov edi, dword [eax + 4]
mov ecx, dword [eax]
push ebx
push edi
lea esi, [esp + 0x70]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x30], edi
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], ebx
call fcn.00418330
push ebx
push edi
lea esi, [esp + 0x5c]
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
call fcn.00418330
xor esi, esi
mov dword [esp + 0x10], esi
cmp edi, ebx
jbe 0x4209a6
mov edx, dword [esp + 0x14]
movzx eax, byte [edx + esi*4]
shl eax, 4
mov ecx, dword [eax + 0x4b49b4]
mov ebx, dword [ecx*4 + 0x4b4958]
mov dword [esp + 0x24], ebx
test ebx, ebx
je 0x420a5e
lea edx, [esp + 0x24]
push edx
lea eax, [esp + 0x6c]
call fcn.00422500
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x58]
call fcn.00422500
add esi, ebx
mov dword [esp + 0x10], esi
cmp esi, edi
jb 0x42095a
xor ebx, ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x10], ebx
cmp edi, ebx
jbe 0x42102c
jmp 0x4209c0
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
movzx edi, byte [eax + esi*4]
lea ebx, [eax + esi*4]
mov dword [esp + 0x18], edi
cmp edi, 0x45
je 0x420fe6
cmp edi, 0xba
je 0x420fe6
cmp edi, 0x4b
je 0x420fe6
cmp edi, 0x4c
je 0x420fd2
cmp edi, 0x90
je 0x420fd2
cmp edi, 0x4f
je 0x420fb4
cmp edi, 0xb2
je 0x420fb4
cmp edi, 0xb8
je 0x420f44
cmp edi, 0xb9
je 0x420f44
cmp edi, 0x2e
jne 0x420ae5
mov eax, dword [ebx + 4]
mov ecx, ebp
call fcn.00422190
mov dword [ebx + 4], eax
test eax, 0x40000000
je 0x420aa4
mov ecx, 1
mov word [ebx + 2], cx
jmp 0x421006
mov esi, ebp
call fcn.0041aec0
mov eax, dword [esp + 0x54]
xor esi, esi
cmp eax, esi
je 0x420a85
lea ecx, [esp + 0x60]
mov dword [esp + 0x58], esi
cmp eax, ecx
je 0x420a85
push eax
call dword [0x4d5464]
add esp, 4
mov eax, dword [esp + 0x68]
mov dword [esp + 0x54], esi
mov dword [esp + 0x5c], esi
cmp eax, esi
je 0x421607
lea edx, [esp + 0x74]
cmp eax, edx
jmp 0x4215f7
push eax
mov eax, dword [ebp + 8]
lea edi, [esp + 0x34]
call fcn.0042b090
cmp dword [esp + 0x30], 0
jne 0x420acf
test byte [esp + 0x3c], 4
jne 0x420acf
mov esi, ebp
call fcn.0041aec0
mov edi, dword [esp + 0x18]
jmp 0x421006
lea ecx, [esp + 0x30]
call fcn.00411240
mov edi, dword [esp + 0x18]
mov word [ebx + 2], ax
jmp 0x421006
cmp edi, 0xa
jne 0x420b17
mov esi, dword [esp + 0x40]
mov ecx, esi
call fcn.0042f560
mov ecx, esi
movzx edx, ax
call fcn.0042f630
test al, al
je 0x420b04
inc edx
cmp dword [esi + 0x9c], 0
je 0x420b0e
inc edx
mov word [ebx + 2], dx
jmp 0x421006
cmp edi, 9
je 0x420f27
cmp edi, 0x8b
je 0x420f27
cmp edi, 0x3d
je 0x420f27
cmp edi, 0xb1
jne 0x420b4c
mov eax, dword [ebx + 4]
mov ecx, ebp
call fcn.004208b0
jmp 0x421003
cmp edi, 0x40
jne 0x420b8d
mov eax, dword [ebx + 4]
mov ecx, ebp
call fcn.004221b0
mov dword [ebx + 4], eax
mov ebx, dword [esp + 0x14]
mov eax, dword [ebx + esi*4 + 8]
test eax, eax
je 0x421006
dec eax
mov ecx, ebp
call fcn.004208b0
test eax, eax
je 0x42107d
mov edx, dword [eax + 0xa4]
mov dword [ebx + esi*4 + 8], edx
jmp 0x421006
cmp edi, 0x3c
jne 0x420baf
movzx eax, word [ebx + 2]
cmp eax, dword [ebp + 0x68]
jae 0x42107d
mov ecx, dword [ebp + 0x64]
mov dx, word [ecx + eax*4]
mov word [ebx + 2], dx
jmp 0x421006
cmp edi, 0x3e
jne 0x420be7
mov eax, dword [ebp]
mov ecx, dword [ebx + 4]
cmp ecx, dword [eax + 0xa8]
jae 0x42107d
mov eax, dword [eax + 0xa4]
mov ecx, dword [eax + ecx*4]
test ecx, ecx
je 0x42107d
mov ecx, dword [ecx]
mov edx, dword [ecx + 0xa4]
mov dword [ebx + 4], edx
jmp 0x421006
cmp edi, 0x62
je 0x420f0d
cmp edi, 1
je 0x420f0d
cmp edi, 0x60
je 0x420f0d
cmp edi, 7
je 0x420f0d
cmp edi, 8
je 0x420f0d
cmp edi, 0x57
je 0x420f0d
cmp edi, 0x54
je 0x420f0d
cmp edi, 0x88
je 0x420f0d
cmp edi, 0xb
je 0x420e39
cmp edi, 0xc
je 0x420e39
cmp edi, 0xd
je 0x420e39
cmp edi, 0xbb
je 0x420e39
cmp edi, 0xbc
je 0x420e39
cmp edi, 0xe
je 0x420e39
cmp edi, 0xf
je 0x420e39
cmp edi, 0x10
je 0x420e39
cmp edi, 0x11
je 0x420e39
cmp edi, 0xbd
jne 0x420d1b
mov ecx, dword [esp + 0x40]
mov esi, dword [ecx + 0xc4]
mov edx, dword [esi + 0x44]
xor eax, eax
test edx, edx
je 0x420cc0
movsx edi, word [ebx + 2]
mov ecx, dword [esi + 0x40]
nop
cmp dword [ecx], edi
je 0x420cf2
inc eax
add ecx, 4
cmp eax, edx
jb 0x420cb0
mov edi, dword [esp + 0x18]
xor esi, esi
push 0x3c
call dword [0x4d5460]
add esp, 4
test eax, eax
je 0x420cfe
push ebx
mov edx, ebp
call fcn.00421670
lea ecx, [esp + 0x18]
mov dword [esp + 0x18], eax
lea eax, [ebp + 0x130]
push ecx
call fcn.00422500
jmp 0x421006
mov edx, dword [esi + 0x18]
mov esi, dword [edx + eax*4]
mov edi, dword [esp + 0x18]
jmp 0x420cc2
lea ecx, [esp + 0x18]
lea eax, [ebp + 0x130]
push ecx
mov dword [esp + 0x1c], 0
call fcn.00422500
jmp 0x421006
cmp edi, 0x41
jne 0x420d84
mov eax, dword [ebx + 4]
mov ecx, ebp
call fcn.004221b0
mov dword [ebx + 4], eax
test eax, eax
je 0x421006
test dword [eax + 0x98], 0x2000000
je 0x421006
cmp dword [ebp + 0x134], 0
je 0x42107d
dec dword [ebp + 0x134]
mov eax, dword [ebp + 0x134]
mov edx, dword [ebp + 0x130]
mov esi, dword [edx + eax*4]
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0x1c]
mov dword [eax + 4], ecx
call fcn.00421640
push esi
call dword [0x4d5464]
add esp, 4
jmp 0x421006
cmp edi, 0xbe
jne 0x420dc6
mov edx, dword [ebp + 0x134]
mov eax, dword [ebp + 0x130]
mov ecx, dword [ebx + 4]
mov esi, dword [eax + edx*4 - 4]
push ecx
push esi
call fcn.004216d0
mov edx, dword [esp + 0x14]
mov dword [ebx + 4], eax
mov eax, dword [esp + 0x10]
mov eax, dword [edx + eax*4 + 8]
mov ecx, dword [esi + 0x34]
mov edx, dword [ecx + 8]
mov dword [esi + 0x34], edx
mov dword [esi + 0x24], eax
jmp 0x421006
cmp edi, 0xbf
jne 0x420ded
mov eax, dword [ebp + 0x134]
mov ecx, dword [ebp + 0x130]
mov edx, dword [ebx + 4]
mov eax, dword [ecx + eax*4 - 4]
push edx
push eax
call fcn.004216d0
jmp 0x421003
cmp edi, 0xc0
jne 0x421006
mov eax, dword [ebp + 0x134]
mov ecx, dword [ebp + 0x130]
mov edx, dword [ebx + 4]
mov esi, dword [ecx + eax*4 - 4]
push edx
push esi
call fcn.004216d0
mov dword [ebx + 4], eax
mov ebx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + ebx*4 + 8]
mov ecx, ebp
call fcn.00422190
mov ecx, dword [esp + 0x14]
mov dword [ecx + ebx*4 + 8], eax
mov dword [esi + 0x38], eax
jmp 0x421006
mov edx, dword [ebx + 4]
mov eax, dword [esp + 0x2c]
xor esi, esi
mov dword [esp + 0x1c], 0
test edx, edx
js 0x420e9b
xor ecx, ecx
inc eax
cmp edx, 2
jl 0x420e79
lea edi, [edx - 2]
shr edi, 1
inc edi
mov dword [esp + 0x20], edi
neg edi
lea edx, [edx + edi*2]
mov edi, dword [esp + 0x68]
add ecx, dword [edi + eax*4]
add esi, dword [edi + eax*4 + 4]
add eax, 2
dec dword [esp + 0x20]
jne 0x420e65
test edx, edx
jle 0x420e88
mov edx, dword [esp + 0x68]
mov eax, dword [edx + eax*4]
mov dword [esp + 0x1c], eax
mov edi, dword [esp + 0x18]
add ecx, esi
add dword [esp + 0x1c], ecx
mov eax, dword [esp + 0x1c]
jmp 0x421003
mov ecx, edx
xor edi, edi
neg ecx
mov dword [esp + 0x20], edi
cmp ecx, 2
jl 0x420eeb
mov ecx, 0xfffffffe
sub ecx, edx
shr ecx, 1
inc ecx
lea edx, [edx + ecx*2]
jmp 0x420ec0
mov edi, dword [esp + 0x68]
sub esi, dword [edi + eax*4]
mov edi, dword [esp + 0x20]
mov dword [esp + 0x24], esi
mov esi, dword [esp + 0x68]
sub edi, dword [esi + eax*4 - 4]
mov esi, dword [esp + 0x24]
sub eax, 2
dec ecx
mov dword [esp + 0x20], edi
jne 0x420ec0
mov ecx, dword [esp + 0x1c]
jmp 0x420eed
mov ecx, esi
test edx, edx
jns 0x420efa
mov edx, dword [esp + 0x68]
mov ecx, dword [edx + eax*4]
neg ecx
add esi, edi
mov edi, dword [esp + 0x18]
add ecx, esi
mov dword [esp + 0x1c], ecx
mov eax, ecx
jmp 0x421003
mov eax, dword [ebx + 4]
cmp eax, dword [ebp + 0x54]
jae 0x42107d
mov ecx, dword [ebp + 0x50]
mov edx, dword [ecx + eax*4]
mov dword [ebx + 4], edx
jmp 0x421006
mov eax, dword [ebx + 4]
mov ecx, ebp
call fcn.004208b0
test eax, eax
je 0x42107d
mov eax, dword [eax + 0xa4]
jmp 0x421003
mov esi, dword [esp + 0x10]
mov edi, eax
mov eax, dword [edi + esi*4 + 8]
mov ecx, ebp
call fcn.00422190
mov dword [edi + esi*4 + 8], eax
push eax
mov eax, dword [ebp + 8]
lea edi, [esp + 0x48]
call fcn.0042b090
mov eax, dword [esp + 0x48]
test eax, eax
je 0x420f9f
test dword [eax + 0x98], 0x2000000
je 0x420f9f
mov ecx, dword [ebp + 0x134]
mov edx, dword [ebp + 0x130]
mov eax, dword [edx + ecx*4 - 4]
movsx ecx, word [ebx + 4]
push ecx
push eax
call fcn.004216d0
mov edi, dword [esp + 0x18]
mov word [ebx + 4], ax
jmp 0x421006
mov ax, word [ebx + 4]
mov ecx, ebp
call fcn.00420880
mov edi, dword [esp + 0x18]
mov word [ebx + 4], ax
jmp 0x421006
mov eax, dword [ebx + 4]
mov ecx, ebp
call fcn.00422190
mov dword [ebx + 4], eax
mov ax, word [ebx + 2]
mov ecx, ebp
call fcn.00420880
mov word [ebx + 2], ax
jmp 0x421006
mov eax, dword [ebx + 4]
test eax, eax
js 0x420ffa
cmp eax, dword [ebp + 0x18]
jge 0x420ffa
mov edx, dword [ebp + 0x14]
mov eax, dword [edx + eax*4]
jmp 0x421003
mov eax, dword [ebx + 4]
test eax, eax
js 0x420ffa
cmp eax, dword [ebp + 0x2c]
jge 0x420ffa
mov ecx, dword [ebp + 0x28]
mov eax, dword [ecx + eax*4]
jmp 0x421003
mov esi, ebp
call fcn.0041aec0
xor eax, eax
mov dword [ebx + 4], eax
mov eax, dword [esp + 0x10]
inc dword [esp + 0x2c]
shl edi, 4
mov edx, dword [edi + 0x4b49b4]
add eax, dword [edx*4 + 0x4b4958]
mov dword [esp + 0x10], eax
cmp eax, dword [esp + 0x28]
jb 0x4209c0
mov ebx, dword [esp + 0x40]
push ebp
mov ecx, ebx
call fcn.00421bf0
mov eax, dword [ebx + 0xc4]
mov esi, dword [eax]
xor edi, edi
mov dword [esp + 0x14], esi
cmp dword [esp + 0x28], edi
jbe 0x42119e
movzx eax, byte [esi + edi*4]
shl eax, 4
lea eax, [eax + 0x4b49b4]
mov dword [esp + 0x20], eax
mov eax, dword [eax]
add eax, 0xfffffffd
cmp eax, 0x11
ja case.0x421076.4
movzx ecx, byte [eax + 0x42162c]
jmp dword [ecx*4 + 0x42161c]
mov esi, ebp
call fcn.0041aec0
lea esi, [esp + 0x54]
call fcn.00407c50
lea esi, [esp + 0x68]
call fcn.00407c50
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x6c]
xor ecx, esp
call fcn.0048c97b
add esp, 0x70
ret 4
movsx eax, word [esi + edi*4 + 2]
mov ecx, dword [ebp + 0xb8]
mov dword [esp + 0x24], eax
cmp eax, ecx
jl 0x4210d9
test ecx, ecx
je 0x421129
mov edx, dword [ebp + 0xb4]
movsx ecx, word [edx + ecx*4 - 4]
add eax, ecx
mov word [esi + edi*4 + 2], ax
jmp case.0x421076.4
test eax, eax
js 0x4210f3
mov edx, dword [ebp + 0xb4]
movsx ecx, word [edx + eax*4]
add eax, ecx
mov word [esi + edi*4 + 2], ax
jmp case.0x421076.4
mov edx, eax
neg edx
cmp edx, dword [ebp + 0xcc]
jl 0x421115
mov esi, ebp
call fcn.0041aec0
mov eax, dword [esp + 0x24]
mov esi, dword [esp + 0x14]
mov word [esi + edi*4 + 2], ax
jmp case.0x421076.4
mov edx, dword [ebp + 0xc8]
lea ecx, [eax*4]
sub edx, ecx
movsx ecx, word [edx]
add eax, ecx
mov word [esi + edi*4 + 2], ax
jmp case.0x421076.4
movsx eax, word [esi + edi*4 + 2]
mov ecx, ebp
call fcn.00421ed0
mov word [esi + edi*4 + 2], ax
movsx eax, word [esi + edi*4 + 4]
mov ecx, ebp
call fcn.00421ed0
mov word [esi + edi*4 + 4], ax
jmp case.0x421076.4
movsx eax, word [esi + edi*4 + 2]
mov ecx, ebp
call fcn.00421ed0
mov word [esi + edi*4 + 2], ax
movsx eax, word [esi + edi*4 + 4]
mov ecx, ebp
call fcn.00421ed0
mov word [esi + edi*4 + 4], ax
movsx eax, word [esi + edi*4 + 6]
mov ecx, ebp
call fcn.00421ed0
mov word [esi + edi*4 + 6], ax
mov edx, dword [esp + 0x20]
mov eax, dword [edx]
add edi, dword [eax*4 + 0x4b4958]
cmp edi, dword [esp + 0x28]
jb 0x421050
mov ecx, dword [ebx + 0xc4]
mov eax, dword [ecx + 0x14]
mov ecx, ebp
call fcn.00421ed0
mov edx, dword [ebx + 0xc4]
mov dword [edx + 0x14], eax
mov eax, dword [ebx + 0xc4]
xor ecx, ecx
mov dword [esp + 0x10], ecx
cmp dword [eax + 0x78], ecx
jbe 0x421273
lea esp, [esp]
mov edx, dword [ebx + 0xc4]
mov eax, dword [edx + 0x74]
mov eax, dword [eax + ecx*4]
mov edx, dword [eax + 0x24]
mov esi, dword [esp + 0x54]
mov edx, dword [esi + edx*4]
mov dword [eax + 0x24], edx
mov eax, dword [ebx + 0xc4]
mov edx, dword [eax + 0x74]
mov eax, dword [edx + ecx*4]
mov edi, dword [eax + 0x20]
mov eax, dword [ebp + 0xb8]
cmp edi, eax
jl 0x421213
test eax, eax
je 0x421250
mov edx, dword [ebp + 0xb4]
movsx eax, word [edx + eax*4 - 4]
jmp 0x42124e
test edi, edi
js 0x421223
mov edx, dword [ebp + 0xb4]
movsx eax, word [edx + edi*4]
jmp 0x42124e
mov edx, edi
neg edx
cmp edx, dword [ebp + 0xcc]
jl 0x42123c
mov esi, ebp
call fcn.0041aec0
mov ecx, dword [esp + 0x10]
jmp 0x421250
mov edx, dword [ebp + 0xc8]
lea eax, [edi*4]
sub edx, eax
movsx eax, word [edx]
add edi, eax
mov edx, dword [ebx + 0xc4]
mov eax, dword [edx + 0x74]
mov edx, dword [eax + ecx*4]
mov dword [edx + 0x20], edi
mov eax, dword [ebx + 0xc4]
inc ecx
mov dword [esp + 0x10], ecx
cmp ecx, dword [eax + 0x78]
jb 0x4211d0
mov eax, dword [ebx + 0xc4]
xor esi, esi
mov dword [esp + 0x10], esi
cmp dword [eax + 0x44], esi
jbe 0x4213a8
jmp 0x421290
mov ecx, dword [eax + 0x40]
mov edi, dword [ecx + esi*4]
mov eax, dword [ebp + 0xb8]
cmp edi, eax
jl 0x4212b1
test eax, eax
je 0x4212f0
mov edx, dword [ebp + 0xb4]
movsx eax, word [edx + eax*4 - 4]
jmp 0x4212ee
test edi, edi
js 0x4212c3
mov ecx, dword [ebp + 0xb4]
movsx edx, word [ecx + edi*4]
add edi, edx
jmp 0x4212f0
mov eax, edi
neg eax
cmp eax, dword [ebp + 0xcc]
jl 0x4212dc
mov esi, ebp
call fcn.0041aec0
mov esi, dword [esp + 0x10]
jmp 0x4212f0
mov edx, dword [ebp + 0xc8]
lea ecx, [edi*4]
sub edx, ecx
movsx eax, word [edx]
add edi, eax
mov ecx, dword [ebx + 0xc4]
mov edx, dword [ecx + 0x40]
mov dword [edx + esi*4], edi
mov eax, dword [ebx + 0xc4]
mov ecx, dword [eax + 0x2c]
mov eax, dword [ecx + esi*4]
test eax, eax
js 0x421319
cmp eax, dword [ebp + 0x40]
jge 0x421319
mov edx, dword [ebp + 0x3c]
mov eax, dword [edx + eax*4]
jmp 0x421388
cmp byte [ebp + 0xd], 0
jne 0x421386
mov eax, dword [ebp + 0x10]
push eax
push str.LoadByteCode_failed._The_bytecode_is_invalid._Number_of_bytes_read_from_stream:__d
lea ecx, [esp + 0x38]
mov dword [esp + 0x38], 0
mov byte [esp + 0x3c], 0
call fcn.00433100
mov edi, 0xb
add esp, 8
lea eax, [esp + 0x34]
cmp dword [esp + 0x30], edi
jbe 0x421354
mov eax, dword [esp + 0x34]
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 0x18]
push 0
push 0
push 0
push 0x4aeeef
call eax
mov byte [ebp + 0xd], 1
cmp dword [esp + 0x30], edi
jbe 0x421386
mov eax, dword [esp + 0x34]
test eax, eax
je 0x421386
push eax
call dword [0x4d5464]
add esp, 4
xor eax, eax
mov ecx, dword [ebx + 0xc4]
mov edx, dword [ecx + 0x2c]
mov dword [edx + esi*4], eax
mov eax, dword [ebx + 0xc4]
inc esi
mov dword [esp + 0x10], esi
cmp esi, dword [eax + 0x44]
jb 0x421290
mov eax, dword [ebx + 0xc4]
mov ecx, dword [eax]
xor edi, edi
mov dword [esp + 0x14], ecx
cmp dword [esp + 0x28], edi
jbe 0x421409
lea esp, [esp]
mov edx, dword [esp + 0x14]
movzx esi, byte [edx + edi*4]
cmp esi, 0x48
je 0x4213d7
cmp esi, 0x44
je 0x4213d7
cmp esi, 0x47
jne 0x4213f3
mov eax, edx
movzx ecx, word [eax + edi*4 + 2]
push ecx
mov ecx, edi
mov eax, ebx
mov edx, ebp
call fcn.00422070
mov edx, dword [esp + 0x14]
mov word [edx + edi*4 + 2], ax
shl esi, 4
mov eax, dword [esi + 0x4b49b4]
add edi, dword [eax*4 + 0x4b4958]
cmp edi, dword [esp + 0x28]
jb 0x4213c0
mov ecx, dword [ebx + 0xc4]
cmp dword [ecx + 0x5c], 0
mov dword [esp + 0x10], 0
jbe 0x421533
xor esi, esi
mov edx, dword [ebx + 0xc4]
mov eax, dword [edx + 0x58]
mov ecx, dword [eax + esi]
mov edx, dword [esp + 0x54]
mov ecx, dword [edx + ecx*4]
mov dword [eax + esi], ecx
mov edx, dword [ebx + 0xc4]
mov eax, dword [edx + 0x58]
mov edi, dword [eax + esi + 4]
mov eax, dword [ebp + 0xb8]
cmp edi, eax
jl 0x42146a
test eax, eax
je 0x42150b
mov ecx, dword [ebp + 0xb4]
movsx edx, word [ecx + eax*4 - 4]
add edi, edx
jmp 0x42150b
test edi, edi
js 0x42147f
mov eax, dword [ebp + 0xb4]
movsx ecx, word [eax + edi*4]
add edi, ecx
jmp 0x42150b
mov edx, edi
neg edx
cmp edx, dword [ebp + 0xcc]
jl 0x4214f7
cmp byte [ebp + 0xd], 0
jne 0x42150b
mov eax, dword [ebp + 0x10]
push eax
push str.LoadByteCode_failed._The_bytecode_is_invalid._Number_of_bytes_read_from_stream:__d
lea ecx, [esp + 0x38]
mov dword [esp + 0x38], 0
mov byte [esp + 0x3c], 0
call fcn.00433100
add esp, 8
cmp dword [esp + 0x30], 0xb
lea eax, [esp + 0x34]
jbe 0x4214c2
mov eax, dword [esp + 0x34]
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 0x18]
push 0
push 0
push 0
push 0x4aeeef
call eax
cmp dword [esp + 0x30], 0xb
mov byte [ebp + 0xd], 1
jbe 0x42150b
mov eax, dword [esp + 0x34]
test eax, eax
je 0x42150b
push eax
call dword [0x4d5464]
add esp, 4
jmp 0x42150b
mov edx, dword [ebp + 0xc8]
lea ecx, [edi*4]
sub edx, ecx
movsx eax, word [edx]
add edi, eax
mov ecx, dword [ebx + 0xc4]
mov edx, dword [ecx + 0x58]
mov eax, dword [esp + 0x10]
mov dword [edx + esi + 4], edi
mov ecx, dword [ebx + 0xc4]
inc eax
add esi, 0xc
mov dword [esp + 0x10], eax
cmp eax, dword [ecx + 0x5c]
jb 0x421423
mov edx, dword [ebx + 0xc4]
xor esi, esi
xor eax, eax
cmp dword [edx + 0x8c], esi
jbe 0x42157b
jmp 0x421550
mov ecx, dword [ebx + 0xc4]
mov edx, dword [ecx + 0x88]
mov edi, dword [esp + 0x54]
lea ecx, [edx + eax*4]
mov edx, dword [ecx]
mov edx, dword [edi + edx*4]
mov dword [ecx], edx
mov ecx, dword [ebx + 0xc4]
add eax, 2
cmp eax, dword [ecx + 0x8c]
jb 0x421550
mov edx, dword [ebx + 0xc4]
xor eax, eax
cmp dword [edx + 0xa8], esi
jbe 0x4215bb
jmp 0x421590
mov ecx, dword [ebx + 0xc4]
mov edx, dword [ecx + 0xa4]
mov edi, dword [esp + 0x54]
lea ecx, [edx + eax*4]
mov edx, dword [ecx]
mov edx, dword [edi + edx*4]
mov dword [ecx], edx
mov ecx, dword [ebx + 0xc4]
add eax, 2
cmp eax, dword [ecx + 0xa8]
jb 0x421590
push ebp
mov ecx, ebx
call fcn.00421910
mov eax, dword [esp + 0x54]
cmp eax, esi
je 0x4215e1
lea edx, [esp + 0x60]
mov dword [esp + 0x58], esi
cmp eax, edx
je 0x4215e1
push eax
call dword [0x4d5464]
add esp, 4
mov eax, dword [esp + 0x68]
mov dword [esp + 0x54], esi
mov dword [esp + 0x5c], esi
cmp eax, esi
je 0x421607
lea ecx, [esp + 0x74]
cmp eax, ecx
mov dword [esp + 0x6c], esi
je 0x421607
push eax
call dword [0x4d5464]
add esp, 4
mov ecx, dword [esp + 0x7c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0048c97b
add esp, 0x70
ret 4