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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 4]
cmp eax, dword [ecx + 8]
jbe 0x4adc48
sub esp, 0x84
mov edx, dword [esp + 0x88]
mov ebx, dword [edx + 8]
movzx ebp, byte [edx + 0x50]
nop
mov ecx, dword [ebx + 4]
mov ebx, dword [ebx]
mov eax, dword [esp + 0x98]
cmp eax, ecx
jae 0x4adc42
xchg ebp, eax
mov byte [esp + 0x22], al
xchg ebp, eax
lea ebp, [eax + eax*2]
shl ebp, 3
movzx ebx, byte [ebp + ebx]
cmp bl, 5
je 0x4adb92
mov ebx, dword [esp + 0x8c]
mov ebp, dword [ebx]
inc ebp
imul ebp, eax
mov esi, edx
mov edx, dword [esp + 0x9c]
add ebp, edx
mov dword [esp + 0x50], ebp
mov edi, edx
mov edx, dword [ebx + 0x2c]
mov ebx, dword [ebx + 0x28]
shr ebp, 5
cmp ebp, edx
jae 0x4adc39
mov dword [esp + 0x68], ebx
mov edx, dword [ebx + ebp*4]
mov ecx, dword [esp + 0x50]
mov ebx, 1
shl ebx, cl
test edx, ebx
je 0x4adb7f
xor ecx, ecx
test cl, cl
je 0x4adb73
mov edx, dword [esp + 0x8c]
mov ebx, dword [edx + 0x1c]
mov ebp, dword [edx + 0x24]
mov ecx, edx
mov edx, dword [edx + 0x20]
mov dword [esp + 0x50], edx
inc edx
cmp edx, ebp
ja 0x4adaff
mov edx, dword [esp + 0x50]
lea ebp, [edx + 1]
mov dword [ecx + 0x20], ebp
lea edx, [edx + edx*2]
mov dword [ebx + edx*4], eax
lea ebp, [ebx + edx*4]
mov byte [ebp + 4], 0
mov dword [ebx + edx*4 + 8], edi
mov edx, dword [esp + 0x90]
mov ebx, dword [esp + 0x94]
jmp 0x4ad230
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x90]
mov ebx, dword [esp + 0x88]
mov ebp, dword [esp + 0x2c]
mov ebx, dword [esp + 0x64]
mov ebp, edi
mov edx, esi
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x28], esi
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x90]
mov byte [esp + 0x23], dl
mov ebx, dword [esi + 8]
mov edx, dword [ebx + 4]
mov ebx, dword [ebx]
cmp ebp, edx
jae 0x4adc27
lea edx, [ebp + ebp*2]
lea ebx, [ebx + edx*8]
lea edi, [esp + 0x6c]
mov esi, ebx
call fcn.00454214
movzx ecx, byte [esp + 0x6c]
cmp cl, 4
ja 0x4ad938
mov dword [esp + 0x3c], ebp
shl edx, 3
cmp cl, 1
ja 0x4ad673
test cl, cl
jne 0x4ad3b6
movzx ebx, byte [esp + 0x23]
test bl, bl
je 0x4ad2a8
mov edx, dword [esp + 0x74]
mov ecx, dword [esp + 0x28]
xor ebx, ebx
mov ebp, dword [esp + 0x8c]
mov esi, ebx
mov ebx, dword [ebp]
inc ebx
imul ebx, edx
add ebx, ecx
mov dword [esp + 0x50], ebx
mov edi, edx
mov edx, dword [ebp + 0x2c]
mov ebp, dword [ebp + 0x28]
shr ebx, 5
cmp ebx, edx
jae 0x4adc30
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x48], ebx
mov edx, dword [ebp + ebx*4]
mov ecx, dword [esp + 0x50]
mov ebx, 1
shl ebx, cl
test edx, ebx
je 0x4ad294
xor ecx, ecx
test cl, cl
jne 0x4ad11d
mov ebp, dword [esp + 0x8c]
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x88]
mov ecx, ebp
mov edx, dword [esp + 0x90]
mov ebx, eax
mov esi, dword [esp + 0x88]
mov ebp, dword [ecx + 0x20]
mov eax, ebx
mov ebx, dword [ecx + 0x1c]
test ebp, ebp
jle 0x4adad3
mov edi, edx
lea edx, [ebp - 1]
mov dword [esp + 0x40], edx
lea ebp, [ebp + ebp*2]
mov dword [esp + 0x50], ebp
shl ebp, 2
mov dword [esp + 0x4c], ebp
mov edx, dword [esp + 0x50]
mov ebp, dword [ebx + edx*4 - 0xc]
mov edx, dword [ebx + edx*4 - 4]
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0x4c]
movzx edx, byte [edx + ebx - 8]
mov ebx, dword [esp + 0x40]
mov dword [ecx + 0x20], ebx
lea ebx, [ecx + 0x1c]
mov dword [esp + 0x64], ebx
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x54]
jmp 0x4ad154
or ebx, edx
mov edx, dword [esp + 0x48]
mov dword [ebp + edx*4], ebx
mov ecx, 1
jmp 0x4ad201
mov ecx, ebx
mov ebx, dword [esp + 0x88]
mov esi, ebx
mov ebx, dword [ebx + 8]
nop
mov edi, edx
mov edx, dword [ebx + 4]
mov ebx, dword [ebx]
cmp ebp, edx
jae 0x4adbee
movzx edx, byte [edi + ebx]
cmp dl, 5
je 0x4ad3a6
mov edx, dword [esp + 0x8c]
mov ebx, dword [edx + 0x20]
mov dword [esp + 0x50], ebx
mov edi, ebp
lea ebp, [ebx + 1]
mov ebx, dword [edx + 0x24]
mov edx, dword [edx + 0x1c]
cmp ebp, ebx
ja 0x4ad336
mov ebx, dword [esp + 0x50]
mov dword [esp + 0x60], edx
lea ebp, [ebx + 1]
mov edx, dword [esp + 0x8c]
mov dword [edx + 0x20], ebp
lea ebx, [ebx + ebx*2]
mov ebp, dword [esp + 0x60]
mov dword [ebp + ebx*4], edi
mov edi, edx
lea edx, [ebp + ebx*4]
mov byte [edx + 4], 1
mov edx, dword [esp + 0x28]
mov dword [ebp + ebx*4 + 8], edx
mov ebp, dword [esp + 0x70]
mov edx, ebp
mov ecx, dword [esp + 0x28]
movzx ebx, byte [esp + 0x23]
jmp 0x4ad1b7
lea eax, [0x4d4320]
mov dword [esp], eax
mov dword [esp + 4], edx
mov ecx, dword [esp + 0x50]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebp
call fcn.0043e480
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x8c]
mov dword [ebx + 0x24], edx
mov edx, dword [0x5af4d0]
test edx, edx
jne 0x4ad39b
mov dword [ebx + 0x1c], eax
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x3c]
mov ebx, ecx
mov edx, eax
mov eax, dword [esp + 0x94]
movzx ecx, byte [esp + 0x23]
jmp 0x4ad2f4
mov edi, dword [esp + 0x64]
call fcn.00453b50
jmp 0x4ad37b
mov edx, dword [esp + 0x28]
mov edi, dword [esp + 0x8c]
jmp 0x4ad322
mov edx, dword [esp + 0x88]
mov ebx, dword [edx + 8]
mov ecx, dword [ebx + 4]
mov ebx, dword [ebx]
mov ebp, dword [esp + 0x70]
cmp ebp, ecx
jae 0x4adbe7
mov esi, edx
lea edx, [ebp + ebp*2]
shl edx, 3
movzx edx, byte [edx + ebx]
mov edi, ebp
lea ebp, [edx - 7]
xchg ebp, eax
cmp al, 3
xchg ebp, eax
ja 0x4ad53b
mov edx, dword [esp + 0x74]
cmp edx, ecx
jae 0x4adbe0
mov dword [esp + 0x38], edx
lea ebp, [edx + edx*2]
shl ebp, 3
movzx ebx, byte [ebp + ebx]
cmp bl, 5
je 0x4ad530
mov ebx, dword [esp + 0x8c]
mov ebp, dword [ebx]
inc ebp
imul ebp, edx
mov edx, dword [esp + 0x28]
add ebp, edx
mov dword [esp + 0x50], ebp
mov edi, edx
mov edx, dword [ebx + 0x2c]
mov ebx, dword [ebx + 0x28]
shr ebp, 5
cmp ebp, edx
jae 0x4adbd7
mov dword [esp + 0x68], ebx
mov edx, dword [ebx + ebp*4]
mov ecx, dword [esp + 0x50]
mov ebx, 1
shl ebx, cl
test edx, ebx
je 0x4ad51d
xor ecx, ecx
test cl, cl
je 0x4ad514
mov edx, dword [esp + 0x8c]
mov ebx, dword [edx + 0x20]
lea ebp, [ebx + 1]
mov ecx, ebx
mov ebx, dword [edx + 0x24]
mov edx, dword [edx + 0x1c]
cmp ebp, ebx
ja 0x4ad4af
lea ebx, [ecx + 1]
mov ebp, dword [esp + 0x8c]
mov dword [ebp + 0x20], ebx
lea ebx, [ecx + ecx*2]
mov ecx, ebp
mov ebp, dword [esp + 0x38]
mov dword [edx + ebx*4], ebp
lea ebp, [edx + ebx*4]
mov byte [ebp + 4], 0
mov dword [edx + ebx*4 + 8], edi
mov edx, dword [esp + 0x74]
mov ebp, dword [ecx]
mov ecx, ebp
movzx ebx, byte [esp + 0x23]
jmp 0x4ad1b7
lea eax, [0x4d4320]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebp
call fcn.0043e480
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x8c]
mov dword [ebx + 0x24], edx
mov edx, dword [0x5af4d0]
test edx, edx
jne 0x4ad509
mov dword [ebx + 0x1c], eax
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x28]
mov edx, eax
mov eax, dword [esp + 0x94]
jmp 0x4ad479
mov edi, dword [esp + 0x64]
call fcn.00453b50
jmp 0x4ad4f0
mov ecx, dword [esp + 0x8c]
jmp 0x4ad49d
or ebx, edx
mov edx, dword [esp + 0x68]
mov dword [edx + ebp*4], ebx
mov ecx, 1
jmp 0x4ad458
mov edi, dword [esp + 0x28]
xor ecx, ecx
jmp 0x4ad458
mov ebx, dword [esp + 0x8c]
mov ebp, dword [ebx]
mov dword [esp + 0x30], ebp
cmp dl, 5
je 0x4ad66c
lea edx, [ebp + 1]
imul edx, edi
lea ecx, [edx + ebp]
mov dword [esp + 0x50], ecx
mov edx, dword [ebx + 0x2c]
mov ebp, dword [ebx + 0x28]
shr ecx, 5
cmp ecx, edx
jae 0x4adbce
mov dword [esp + 0x48], ecx
mov edx, dword [ebp + ecx*4]
mov ecx, dword [esp + 0x50]
mov ebx, 1
shl ebx, cl
test edx, ebx
je 0x4ad658
xor ecx, ecx
test cl, cl
je 0x4ad64c
mov edx, dword [esp + 0x8c]
mov ebx, dword [edx + 0x20]
lea ebp, [ebx + 1]
mov ecx, ebx
mov ebx, dword [edx + 0x1c]
mov edx, dword [edx + 0x24]
cmp ebp, edx
ja 0x4ad5e3
lea edx, [ecx + 1]
mov ebp, dword [esp + 0x8c]
mov dword [ebp + 0x20], edx
lea edx, [ecx + ecx*2]
mov dword [ebx + edx*4], edi
mov ecx, ebp
lea ebp, [ebx + edx*4]
mov byte [ebp + 4], 0
mov ebp, dword [esp + 0x30]
mov dword [ebx + edx*4 + 8], ebp
mov edx, dword [esp + 0x70]
mov ecx, dword [esp + 0x28]
movzx ebx, byte [esp + 0x23]
jmp 0x4ad1b7
mov dword [esp + 0x44], edi
lea eax, [0x4d4320]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ebp
call fcn.0043e480
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x8c]
mov dword [ebx + 0x24], edx
mov edx, dword [0x5af4d0]
test edx, edx
jne 0x4ad641
mov dword [ebx + 0x1c], eax
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x44]
mov ebx, eax
mov eax, dword [esp + 0x94]
jmp 0x4ad5ad
mov edi, dword [esp + 0x64]
call fcn.00453b50
jmp 0x4ad628
mov ecx, dword [esp + 0x8c]
jmp 0x4ad5d1
or ebx, edx
mov edx, dword [esp + 0x48]
mov dword [ebp + edx*4], ebx
mov ecx, 1
jmp 0x4ad58c
xor ecx, ecx
jmp 0x4ad58c
cmp cl, 2
jne 0x4ad7f8
movzx ebx, byte [esp + 0x23]
test bl, bl
jne 0x4ad7d3
mov ecx, ebx
mov ebx, dword [esp + 0x74]
mov esi, edx
mov edx, dword [esp + 0x8c]
mov edi, ebp
mov ebp, dword [edx + 4]
cmp dword [edx + 8], ebx
jbe 0x4ad7c3
mov edx, dword [esp + 0x88]
mov edx, dword [edx + 8]
mov ebx, dword [ebp + ebx*4]
mov ebp, dword [edx + 4]
mov edx, dword [edx]
cmp edi, ebp
jae 0x4adbb5
movzx edx, byte [esi + edx]
cmp dl, 5
je 0x4ad7b7
mov edx, dword [esp + 0x8c]
mov ebp, dword [edx + 0x20]
mov dword [esp + 0x50], ebp
mov esi, ebx
lea ebx, [ebp + 1]
mov ebp, dword [edx + 0x24]
mov edx, dword [edx + 0x1c]
cmp ebx, ebp
ja 0x4ad746
mov ebx, dword [esp + 0x50]
mov dword [esp + 0x5c], edx
lea ebp, [ebx + 1]
mov edx, dword [esp + 0x8c]
mov dword [edx + 0x20], ebp
lea ebx, [ebx + ebx*2]
mov ebp, dword [esp + 0x5c]
mov dword [ebp + ebx*4], edi
mov edi, edx
lea edx, [ebp + ebx*4]
mov byte [edx + 4], 1
mov dword [ebp + ebx*4 + 8], esi
mov edx, dword [edi + 8]
mov ebx, dword [edi + 4]
mov ebp, dword [esp + 0x74]
cmp ebp, edx
jae 0x4adbac
mov edx, dword [esp + 0x28]
mov dword [ebx + ebp*4], edx
mov ebp, dword [esp + 0x70]
mov edx, ebp
mov ecx, dword [esp + 0x28]
movzx ebx, byte [esp + 0x23]
jmp 0x4ad1b7
mov dword [esp + 0x4c], esi
lea eax, [0x4d4320]
mov dword [esp], eax
mov dword [esp + 4], edx
mov ecx, dword [esp + 0x50]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.0043e480
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x8c]
mov dword [ebx + 0x24], edx
mov edx, dword [0x5af4d0]
test edx, edx
jne 0x4ad7ac
mov dword [ebx + 0x1c], eax
mov esi, dword [esp + 0x4c]
mov edi, dword [esp + 0x3c]
mov ebx, ecx
mov edx, eax
mov eax, dword [esp + 0x94]
movzx ecx, byte [esp + 0x23]
jmp 0x4ad6ef
mov edi, dword [esp + 0x64]
call fcn.00453b50
jmp 0x4ad78f
mov edi, dword [esp + 0x8c]
jmp 0x4ad719
mov edx, dword [esp + 0x28]
mov edi, dword [esp + 0x8c]
jmp 0x4ad732
mov edx, dword [esp + 0x8c]
mov ecx, dword [edx + 8]
mov ebx, dword [edx + 4]
mov ebp, dword [esp + 0x74]
cmp ebp, ecx
jae 0x4adbbe
mov edx, dword [esp + 0x28]
mov dword [ebx + ebp*4], edx
jmp 0x4ad209
cmp cl, 3
jne 0x4ad85e
mov ecx, dword [esp + 0x90]
mov edx, dword [ecx + 0x14]
mov dword [esp], eax
mov ebx, dword [esp + 0x28]
mov dword [esp + 4], ebx
call edx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov eax, dword [esp + 0x74]
mov byte [esp + 8], al
call fcn.004ae0c0
movzx eax, byte [esp + 0xc]
test al, al
je 0x4ad852
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x94]
mov ecx, dword [esp + 0x28]
movzx ebx, byte [esp + 0x23]
jmp 0x4ad1b7
mov eax, dword [esp + 0x94]
jmp 0x4ad209
mov edx, dword [esp + 0x8c]
mov ebx, dword [edx + 8]
mov ebp, dword [edx + 4]
test ebx, ebx
je 0x4ad929
cmp ebx, 1
jle 0x4ad920
mov ebx, dword [esp + 0x28]
mov dword [ebp + 4], ebx
mov ecx, dword [edx + 0x14]
mov ebp, dword [edx + 0x10]
cmp ecx, 1
jbe 0x4adba2
mov esi, ebp
mov ebp, dword [ebp + 4]
cmp ebp, 0xffffffff
jne 0x4ad906
mov ebp, dword [edx + 8]
mov edi, edx
mov edx, dword [edx + 4]
cmp ecx, ebp
jle 0x4ad902
cmp esi, edx
je 0x4ad8bf
mov dword [esp], esi
mov dword [esp + 4], edx
shl ebp, 2
mov dword [esp + 8], ebp
call fcn.00454440
movzx edx, byte [esp + 0x22]
test dl, dl
je 0x4ad8f3
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x8c]
cmp dword [ebp], ebx
je 0x4ad8e4
mov eax, dword [esp + 0x94]
jmp 0x4ad209
mov byte [esp + 0xa0], 1
add esp, 0x84
ret
mov byte [esp + 0xa0], 1
add esp, 0x84
ret
mov ebp, ecx
jmp 0x4ad8a8
mov edi, edx
movzx edx, byte [esp + 0x22]
test dl, dl
je 0x4ad8bf
test ebx, ebx
jle 0x4ad8bf
cmp ebx, ebp
jle 0x4ad8bf
mov edx, edi
jmp 0x4ad89c
mov ebx, dword [esp + 0x28]
jmp 0x4ad883
mov byte [esp + 0xa0], 1
add esp, 0x84
ret
cmp cl, 7
ja 0x4ad9c7
cmp cl, 5
je 0x4adc0f
cmp cl, 6
jne 0x4ad961
mov edx, dword [esp + 0x70]
mov ecx, dword [esp + 0x28]
movzx ebx, byte [esp + 0x23]
jmp 0x4ad1b7
mov ecx, dword [esp + 0x90]
mov edx, dword [ecx + 0x20]
mov dword [esp], eax
mov ebx, dword [esp + 0x28]
mov dword [esp + 4], ebx
call edx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x24], ecx
lea edx, [esp + 0x6c]
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.004a5830
cmp dword [esp + 8], 0xffffffff
je 0x4ad9bb
mov ebp, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
lea ecx, [eax + ebp]
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x94]
movzx ebx, byte [esp + 0x23]
jmp 0x4ad1b7
mov eax, dword [esp + 0x94]
jmp 0x4ad209
cmp cl, 8
je 0x4ada79
cmp cl, 9
je 0x4ada2e
cmp cl, 0xa
jne 0x4adbf7
mov ecx, dword [esp + 0x90]
mov edx, dword [ecx + 0x20]
mov dword [esp], eax
mov ebx, dword [esp + 0x28]
mov dword [esp + 4], ebx
call edx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
cmp eax, 0xa
je 0x4ada22
cmp eax, 0xffffffff
je 0x4ada22
mov ebp, dword [esp + 0x28]
add ecx, ebp
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x94]
movzx ebx, byte [esp + 0x23]
jmp 0x4ad1b7
mov eax, dword [esp + 0x94]
jmp 0x4ad209
mov ecx, dword [esp + 0x90]
mov edx, dword [ecx + 0x20]
mov dword [esp], eax
mov ebx, dword [esp + 0x28]
mov dword [esp + 4], ebx
call edx
mov eax, dword [esp + 0xc]
cmp dword [esp + 8], 0xffffffff
je 0x4ada6d
mov ebp, dword [esp + 0x28]
lea ecx, [ebp + eax]
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x94]
movzx ebx, byte [esp + 0x23]
jmp 0x4ad1b7
mov eax, dword [esp + 0x94]
jmp 0x4ad209
mov ecx, dword [esp + 0x90]
mov edx, dword [ecx + 0x20]
mov dword [esp], eax
mov ebx, dword [esp + 0x28]
mov dword [esp + 4], ebx
call edx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x7c]
mov ebx, dword [esp + 0x78]
test edx, edx
jbe 0x4adbc5
cmp dword [ebx], eax
jne 0x4adac7
mov ebp, dword [esp + 0x28]
add ecx, ebp
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x94]
movzx ebx, byte [esp + 0x23]
jmp 0x4ad1b7
mov eax, dword [esp + 0x94]
jmp 0x4ad209
movzx eax, byte [esp + 0x22]
test al, al
je 0x4adafb
mov eax, dword [ecx + 0x10]
cmp dword [ecx + 0x14], 1
jle 0x4adafb
mov eax, dword [eax + 4]
test eax, eax
setge al
mov byte [esp + 0xa0], al
add esp, 0x84
ret
xor eax, eax
jmp 0x4adaed
lea eax, [0x4d4320]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov ecx, dword [esp + 0x50]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edx
call fcn.0043e480
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x8c]
mov dword [ebx + 0x24], edx
mov edx, dword [0x5af4d0]
test edx, edx
jne 0x4adb69
mov dword [ebx + 0x1c], eax
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x9c]
mov edx, ecx
mov ebx, eax
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x8c]
jmp 0x4ad0f3
lea edi, [ebx + 0x1c]
call fcn.00453b50
jmp 0x4adb44
mov ecx, dword [esp + 0x8c]
jmp 0x4ad10a
or ebx, edx
mov edx, dword [esp + 0x68]
mov dword [edx + ebp*4], ebx
mov ecx, 1
jmp 0x4ad0c8
mov esi, edx
mov edi, dword [esp + 0x9c]
xor ecx, ecx
jmp 0x4ad0c8
mov eax, 1
call fcn.00453bd0
mov eax, ebp
mov ecx, edx
call fcn.00453be0
mov eax, edi
mov ecx, ebp
call fcn.00453be0
mov eax, ebp
call fcn.00453be0
xor eax, eax
mov ecx, edx
call fcn.00453bd0
mov eax, ecx
mov ecx, edx
call fcn.00453be0
mov eax, ebp
mov ecx, edx
call fcn.00453be0
mov eax, edx
call fcn.00453be0
mov eax, ebp
call fcn.00453be0
mov eax, ebp
mov ecx, edx
call fcn.00453be0
lea eax, [0x4cc260]
mov dword [esp], eax
lea eax, [0x5028a8]
mov dword [esp + 4], eax
call fcn.0042d320
lea eax, [0x4cc260]
mov dword [esp], eax
lea eax, [0x5028b0]
mov dword [esp + 4], eax
call fcn.0042d320
mov eax, ebp
mov ecx, edx
call fcn.00453be0
mov eax, ebx
mov ecx, edx
call fcn.00453be0
mov eax, ebp
mov ecx, edx
call fcn.00453be0
call fcn.00453be0
nop
call fcn.00452310
jmp fcn.004ad020