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

Disassembly:
sub esp, 0x194
xor ecx, ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], edi
mov dword [esp + 0x190], eax
mov byte [eax + 0x17], 0
mov dword [eax], 0
mov dword [eax + 4], 0x7ffffffe
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], 0
mov dword [esp + 0x158], ecx
mov edx, dword [eax + 0x28]
cmp ecx, edx
jae 0x415258
mov ebx, dword [esp + 0x190]
mov edx, dword [ebx + 0x2c]
mov ebx, dword [ebx + 0x28]
mov dword [esp + 0x118], ebx
mov eax, dword [esp + 0x158]
cmp eax, ebx
mov dword [esp + 0x11c], edx
jb 0x414402
mov dword [esp + 4], 0x4f4
mov dword [esp], 0x414200
call fcn.00410c8c
mov ecx, dword [esp + 0x11c]
movzx esi, byte [ecx + eax]
sub esi, 0x20
cmp esi, 0x19
ja case.0x414419.33
jmp dword [esi*4 + 0x467500]
mov ebx, dword [esp + 0x158]
inc ebx
xor edi, edi
mov edx, dword [esp + 0x190]
lea ecx, [ebx + 1]
cmp ecx, dword [edx + 0x28]
setb cl
mov edx, 0x4154ac
push ecx
lea eax, [esp + 0x194]
mov ecx, 0x414200
push edx
push eax
mov eax, 0x4fc
push ecx
push 0xc
call fcn.00403888
mov edx, dword [esp + 0x190]
mov eax, dword [edx + 0x28]
mov edx, dword [edx + 0x2c]
mov esi, ebx
inc ebx
mov dword [esp + 0x140], eax
cmp esi, eax
mov dword [esp + 0x144], edx
jae 0x4152a4
mov ecx, dword [esp + 0x144]
cmp byte [ecx + esi], 0x25
jne 0x41442a
mov edx, dword [esp + 0x190]
mov eax, dword [edx + 0x28]
mov edx, dword [edx + 0x2c]
mov dword [esp + 0x130], eax
cmp ebx, eax
mov dword [esp + 0x134], edx
jae 0x4152b8
mov ecx, dword [esp + 0x134]
cmp byte [ecx + ebx], 0x2d
jne 0x4144ed
mov edx, dword [esp + 0x190]
inc ebx
cmp ebx, dword [edx + 0x28]
setb cl
mov edx, 0x4154e8
push ecx
lea esi, [esp + 0x194]
mov ecx, 0x414200
push edx
mov eax, 0x506
push esi
push ecx
push 0xc
call fcn.00403888
mov edx, dword [esp + 0x190]
mov eax, dword [edx + 0x28]
mov edx, dword [edx + 0x2c]
mov dword [esp + 0x138], eax
cmp ebx, eax
mov dword [esp + 0x13c], edx
jae 0x4152cc
mov ecx, dword [esp + 0x13c]
cmp byte [ecx + ebx], 0x29
jne 0x41452a
test edi, edi
lea edi, [edi - 1]
jne 0x41442a
jmp 0x41459e
mov edx, dword [esp + 0x190]
mov eax, dword [edx + 0x28]
mov edx, dword [edx + 0x2c]
mov dword [esp + 0x128], eax
cmp ebx, eax
mov dword [esp + 0x12c], edx
jae 0x4152e0
mov ecx, dword [esp + 0x12c]
cmp byte [ecx + ebx], 0x7c
jne 0x414564
test edi, edi
jne 0x41442a
jmp 0x41459e
mov edx, dword [esp + 0x190]
mov eax, dword [edx + 0x28]
mov edx, dword [edx + 0x2c]
mov dword [esp + 0x120], eax
cmp ebx, eax
mov dword [esp + 0x124], edx
jae 0x4152f4
mov ecx, dword [esp + 0x124]
cmp byte [ecx + ebx], 0x28
jne 0x41442a
inc edi
jmp 0x41442a
mov esi, dword [esp + 0x190]
mov eax, dword [esi + 0x28]
mov edx, dword [esi + 0x2c]
mov dword [esp + 0x50], eax
cmp ebx, eax
mov dword [esp + 0x54], edx
jae 0x415308
mov edi, dword [esp + 0x54]
cmp byte [edi + ebx], 0x7c
jne 0x4147a5
mov edi, ebx
mov ecx, dword [esp + 0x190]
mov eax, dword [ecx + 0x28]
mov edx, dword [ecx + 0x2c]
inc ebx
mov esi, ebx
mov dword [esp + 0x110], eax
inc ebx
cmp esi, eax
mov dword [esp + 0x114], edx
jae 0x41531c
mov ecx, dword [esp + 0x114]
cmp byte [ecx + esi], 0x25
jne 0x414630
mov edx, dword [esp + 0x190]
mov eax, dword [edx + 0x28]
mov edx, dword [edx + 0x2c]
mov dword [esp + 0xf0], eax
cmp ebx, eax
mov dword [esp + 0xf4], edx
jae 0x415330
mov ecx, dword [esp + 0xf4]
cmp byte [ecx + ebx], 0x25
jne 0x414657
inc ebx
mov edx, dword [esp + 0x190]
mov eax, dword [edx + 0x28]
mov edx, dword [edx + 0x2c]
mov dword [esp + 0x110], eax
mov esi, ebx
inc ebx
mov dword [esp + 0x114], edx
cmp esi, eax
jb 0x4145f2
jmp 0x41531c
mov edx, dword [esp + 0x190]
mov eax, dword [edx + 0x28]
mov edx, dword [edx + 0x2c]
mov dword [esp + 0x48], eax
cmp ebx, eax
mov dword [esp + 0x4c], edx
jae 0x415344
mov ecx, dword [esp + 0x4c]
cmp byte [ecx + ebx], 0x29
je 0x4146f4
mov dword [esp], 0x467460
call fcn.0041407c
mov edx, 0x41433c
mov esi, eax
push edx
push 0x1d
mov ecx, dword [esp + 0x198]
mov eax, dword [ecx + 0x28]
mov dword [esp + 0x48], eax
mov edx, dword [ecx + 0x2c]
mov edi, eax
mov dword [esp + 0x4c], edx
cmp edi, ebx
jae 0x4146bf
push 0x524
mov ecx, 0x414200
push ecx
call fcn.00410c8c
mov eax, edi
mov edx, dword [esp + 0x4c]
add edx, ebx
sub eax, ebx
push edx
push eax
call fcn.0040b7e0
mov ecx, 0x414200
push edx
push eax
mov eax, 0xc
push ecx
push eax
mov eax, esi
push 0x522
push 0
call fcn.00414244
mov dword [esp], eax
call fcn.00413d00
mov edx, dword [esp + 0x190]
lea esi, [edx + 0x18]
mov eax, dword [edx + 0x28]
mov dword [esp + 0x78], eax
mov edx, dword [edx + 0x2c]
lea ecx, [edi - 1]
mov dword [esp + 0x7c], edx
cmp dword [esp + 0x78], ecx
jb 0x415358
mov edx, dword [esp + 0x158]
inc edx
cmp ecx, edx
jb 0x415358
lea eax, [edi - 2]
mov ecx, dword [esp + 0x7c]
sub eax, dword [esp + 0x158]
mov edx, dword [esp + 0x158]
mov dword [esi], eax
lea ecx, [edx + ecx + 1]
mov dword [esi + 4], ecx
mov edx, dword [esp + 0x190]
lea ecx, [edx + 0x20]
mov dword [esp + 0x180], ecx
mov eax, dword [edx + 0x28]
mov edx, dword [edx + 0x2c]
mov dword [esp + 0x70], eax
lea ecx, [ebx - 1]
mov dword [esp + 0x74], edx
cmp dword [esp + 0x70], ecx
jb 0x41536c
lea edx, [edi + 1]
cmp ecx, edx
jb 0x41536c
lea esi, [ebx - 2]
mov ecx, dword [esp + 0x74]
lea edx, [edi + ecx + 1]
mov ecx, dword [esp + 0x180]
sub esi, edi
mov dword [ecx], esi
mov dword [ecx + 4], edx
jmp 0x414813
mov ecx, dword [esp + 0x190]
mov eax, dword [ecx + 0x28]
mov edx, dword [ecx + 0x2c]
mov dword [esp + 0x68], eax
lea esi, [ecx + 0x18]
lea ecx, [ebx - 1]
mov dword [esp + 0x6c], edx
cmp dword [esp + 0x68], ecx
jb 0x415380
mov edx, dword [esp + 0x158]
inc edx
cmp ecx, edx
jb 0x415380
lea edi, [ebx - 2]
mov ecx, dword [esp + 0x6c]
sub edi, dword [esp + 0x158]
mov edx, dword [esp + 0x158]
mov dword [esi], edi
lea ecx, [edx + ecx + 1]
mov dword [esi + 4], ecx
mov edx, dword [esp + 0x190]
mov dword [edx + 0x20], 0
mov dword [edx + 0x24], 0
mov dword [esp + 0x18c], ebx
mov edx, dword [esp + 0x190]
mov byte [edx + 0x14], 0x28
mov esi, dword [esp + 0x190]
add esi, 0x28
mov ecx, dword [esp + 0x18c]
mov edx, dword [esp + 0x190]
inc ecx
mov eax, dword [edx + 0x28]
mov edx, dword [edx + 0x2c]
mov edi, eax
mov dword [esp + 0x38], eax
cmp edi, ecx
mov dword [esp + 0x3c], edx
jb 0x415394
mov ebx, dword [esp + 0x18c]
mov eax, edi
lea ecx, [ebx + 1]
mov edx, dword [esp + 0x3c]
sub eax, ecx
lea ecx, [ebx + edx + 1]
mov dword [esi], eax
mov dword [esi + 4], ecx
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
add esp, 0x194
ret
mov ecx, dword [esp + 0x190]
mov dword [esp + 0x150], ecx
push 1
mov eax, dword [esp + 0x154]
call fcn.00414274
inc dword [esp + 0x158]
mov edx, dword [esp + 0x190]
mov ebx, dword [edx + 0x28]
cmp dword [esp + 0x158], ebx
jb 0x4143c8
jmp 0x415258
mov ebx, dword [esp + 0x190]
mov dword [esp + 0x164], ebx
push 1
mov eax, dword [esp + 0x168]
call fcn.004142d4
inc dword [esp + 0x158]
jmp 0x4148a7
mov edx, dword [esp + 0x190]
mov dword [esp + 0x170], edx
push 1
mov eax, dword [esp + 0x174]
call fcn.004142f4
inc dword [esp + 0x158]
jmp 0x4148a7
mov ecx, dword [esp + 0x190]
mov dword [esp + 0x174], ecx
push 1
mov eax, dword [esp + 0x178]
call fcn.00414294
inc dword [esp + 0x158]
jmp 0x4148a7
mov ebx, dword [esp + 0x190]
mov dword [esp + 0x14c], ebx
push 1
mov eax, dword [esp + 0x150]
call fcn.004142b4
inc dword [esp + 0x158]
jmp 0x4148a7
inc dword [esp + 0x158]
mov edx, dword [esp + 0x190]
mov eax, dword [edx + 0x28]
mov ecx, dword [edx + 0x2c]
mov ebx, dword [esp + 0x158]
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], ecx
cmp dword [esp + 0x158], eax
jb 0x4149a3
mov dword [esp + 4], 0x539
mov dword [esp], 0x414200
call fcn.00410c8c
mov esi, dword [esp + 0xb4]
movzx eax, byte [esi + ebx]
call fcn.00415a50
test al, al
je 0x414aa5
mov esi, dword [esp + 0x190]
mov edx, dword [esp + 0x190]
mov eax, dword [edx + 0x28]
mov edx, dword [edx + 0x2c]
add esi, 0x28
mov dword [esp + 0xd0], eax
mov edi, eax
cmp eax, 1
mov dword [esp + 0xd4], edx
jb 0x4153a8
mov ecx, dword [esp + 0xd4]
lea eax, [edi - 1]
inc ecx
mov dword [esi], eax
mov dword [esi + 4], ecx
mov edx, dword [esp + 0x190]
mov dword [esp + 0x188], edx
mov ecx, dword [esp + 0x190]
lea eax, [ecx + 0x28]
call fcn.0040bcb0
mov edx, dword [esp + 0x188]
neg eax
mov dword [edx], eax
mov ecx, dword [esp + 0x190]
mov dword [esp + 0x158], 0
mov ebx, dword [esp + 0x158]
inc ebx
mov dword [esp + 0x158], ebx
mov eax, dword [ecx + 0x28]
mov edx, dword [ecx + 0x2c]
mov dword [esp + 0xa8], eax
dec ebx
cmp ebx, eax
mov dword [esp + 0xac], edx
jb 0x414a71
mov dword [esp + 4], 0x540
mov dword [esp], 0x414200
call fcn.00410c8c
mov ecx, dword [esp + 0xac]
cmp byte [ecx + ebx], 0x24
sete dl
mov ecx, 0x415530
push edx
lea eax, [esp + 0x194]
mov edx, 0x414200
push ecx
push eax
mov eax, 0x540
push edx
push 0xc
call fcn.00403888
jmp 0x4148a7
mov ebx, dword [esp + 0x190]
mov dword [ebx], 0x7fffffff
jmp 0x4148a7
mov eax, dword [esp + 0x190]
mov edx, dword [eax + 0x2c]
mov eax, dword [eax + 0x28]
mov dword [esp + 0x80], eax
mov edi, dword [esp + 0x158]
mov esi, eax
mov dword [esp + 0x84], edx
cmp esi, edi
jb 0x4153bc
mov ecx, esi
mov edx, dword [esp + 0x84]
lea eax, [esp + 0x20]
sub ecx, dword [esp + 0x158]
add edx, dword [esp + 0x158]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], edx
call fcn.0040c090
mov ecx, 0x41555c
mov edx, 0x414200
push dword [esp + 0x20]
lea edi, [esp + 0x194]
mov ebx, eax
push ecx
mov eax, 0x54c
push edi
push edx
push 0xc
call fcn.00404430
push dword [esp + 0x24]
push dword [esp + 0x24]
mov ecx, dword [esp + 0x198]
push dword [ecx + 0x2c]
push dword [ecx + 0x28]
call fcn.00404460
mov dword [esp + 0x158], eax
mov eax, 0x24
push dword [esp + 0x24]
push dword [esp + 0x24]
call fcn.004044b0
test al, al
je 0x414b8c
mov ecx, dword [esp + 0x190]
lea esi, [ecx + 0x16]
lea edi, [ecx + 0x15]
mov eax, ebx
call fcn.0040c324
mov byte [edi], al
mov byte [esi], al
inc dword [esp + 0x158]
jmp 0x4148a7
push dword [esp + 0x24]
mov eax, 0x3a
push dword [esp + 0x24]
call fcn.004044b0
test al, al
je 0x414ca0
mov esi, dword [esp + 0x190]
add esi, 0x15
mov eax, ebx
call fcn.0040c324
mov byte [esi], al
cmp dword [esp + 0x20], 1
jb 0x4153d0
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
dec ebx
mov dword [esp + 0x20], ebx
inc ecx
mov eax, 0x24
mov dword [esp + 0x24], ecx
push ecx
push ebx
call fcn.004044b0
test al, al
je 0x414bf3
mov edx, dword [esp + 0x190]
mov byte [edx + 0x16], 0xff
jmp 0x414c08
mov ebx, dword [esp + 0x190]
add ebx, 0x16
lea eax, [esp + 0x20]
call fcn.0040c398
mov byte [ebx], al
push dword [esp + 0x24]
push dword [esp + 0x24]
mov esi, dword [esp + 0x198]
push dword [esi + 0x2c]
push dword [esi + 0x28]
call fcn.00404460
mov ecx, dword [esp + 0x190]
mov dword [esp + 0x158], eax
mov ebx, dword [esp + 0x158]
inc ebx
mov dword [esp + 0x158], ebx
mov eax, dword [ecx + 0x28]
mov edx, dword [ecx + 0x2c]
mov dword [esp + 0xa0], eax
dec ebx
cmp ebx, eax
mov dword [esp + 0xa4], edx
jb 0x414c6c
mov dword [esp + 4], 0x563
mov dword [esp], 0x414200
call fcn.00410c8c
mov edi, dword [esp + 0xa4]
cmp byte [edi + ebx], 0x24
sete cl
mov edx, 0x415598
push ecx
lea esi, [esp + 0x194]
mov eax, 0x414200
push edx
push esi
push eax
mov eax, 0x563
push 0xc
call fcn.00403888
jmp 0x4148a7
mov esi, dword [esp + 0x190]
mov eax, ebx
call fcn.0040c3f4
mov dword [esi], eax
jmp 0x4148a7
inc dword [esp + 0x158]
mov ebx, dword [esp + 0x190]
mov dword [esp + 0x160], ebx
push 1
mov eax, dword [esp + 0x164]
call fcn.00414314
mov edx, dword [esp + 0x190]
mov eax, dword [edx + 0x28]
mov dword [esp + 0x90], eax
mov edx, dword [edx + 0x2c]
mov ecx, dword [esp + 0x158]
mov dword [esp + 0x94], edx
cmp ecx, eax
jae 0x4153e4
mov ebx, dword [esp + 0x94]
mov esi, dword [esp + 0x158]
cmp byte [ebx + esi], 0x2a
jne 0x414d30
inc dword [esp + 0x158]
mov ebx, dword [esp + 0x190]
mov dword [ebx + 8], 0x7fffffff
jmp 0x414e0c
mov ecx, dword [esp + 0x190]
mov eax, dword [ecx + 0x28]
mov edx, dword [ecx + 0x2c]
mov dword [esp + 0xd8], eax
cmp esi, eax
mov dword [esp + 0xdc], edx
jb 0x414d63
mov dword [esp + 4], 0x577
mov dword [esp], 0x414200
call fcn.00410c8c
mov ebx, dword [esp + 0xdc]
movzx eax, byte [ebx + esi]
call fcn.00415a50
test al, al
je 0x414dfe
mov edx, dword [esp + 0x190]
mov eax, dword [edx + 0x28]
mov edx, dword [edx + 0x2c]
mov dword [esp + 0x98], eax
mov ecx, dword [esp + 0x158]
mov esi, eax
mov dword [esp + 0x9c], edx
cmp esi, ecx
jb 0x4153f8
mov ecx, esi
mov edx, dword [esp + 0x9c]
mov ebx, dword [esp + 0x190]
sub ecx, dword [esp + 0x158]
add ebx, 8
lea eax, [esp + 0x28]
add edx, dword [esp + 0x158]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], edx
call fcn.0040bcb0
mov dword [ebx], eax
push dword [esp + 0x2c]
push dword [esp + 0x2c]
mov ecx, dword [esp + 0x198]
push dword [ecx + 0x2c]
push dword [ecx + 0x28]
call fcn.00404460
mov dword [esp + 0x158], eax
jmp 0x414e0c
mov esi, dword [esp + 0x190]
mov dword [esi + 8], 3
mov edx, dword [esp + 0x190]
mov eax, dword [edx + 0x28]
mov edx, dword [edx + 0x2c]
mov dword [esp + 0xb8], eax
mov esi, dword [esp + 0x158]
cmp esi, eax
mov dword [esp + 0xbc], edx
jae 0x41540c
mov ecx, dword [esp + 0xbc]
mov ebx, dword [esp + 0x158]
cmp byte [ecx + ebx], 0x3f
jne 0x4148a7
mov esi, dword [esp + 0x190]
mov dword [esi + 0xc], 0x7fffffff
inc dword [esp + 0x158]
jmp 0x4148a7
inc dword [esp + 0x158]
mov eax, dword [esp + 0x190]
mov edx, dword [eax + 0x2c]
mov eax, dword [eax + 0x28]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], edx
cmp dword [esp + 0x158], eax
jae 0x415420
mov ebx, dword [esp + 0xcc]
mov esi, dword [esp + 0x158]
cmp byte [ebx + esi], 0x2a
jne 0x415018
inc dword [esp + 0x158]
mov edx, dword [esp + 0x190]
mov eax, dword [edx + 0x28]
mov ecx, dword [edx + 0x2c]
mov ebx, dword [esp + 0x158]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], ecx
cmp dword [esp + 0x158], eax
jb 0x414ef5
mov dword [esp + 4], 0x58e
mov dword [esp], 0x414200
call fcn.00410c8c
mov esi, dword [esp + 0xc4]
movzx eax, byte [esi + ebx]
call fcn.00415a50
test al, al
je 0x415005
mov esi, dword [esp + 0x190]
mov ecx, dword [esp + 0x190]
mov eax, dword [ecx + 0x28]
mov ecx, dword [ecx + 0x2c]
add esi, 0x28
mov dword [esp + 0x88], eax
mov edx, dword [esp + 0x158]
mov edi, eax
mov dword [esp + 0x8c], ecx
cmp edi, edx
jb 0x415434
mov eax, edi
mov edx, dword [esp + 0x8c]
sub eax, dword [esp + 0x158]
add edx, dword [esp + 0x158]
mov dword [esi], eax
mov dword [esi + 4], edx
mov ecx, dword [esp + 0x190]
lea edx, [ecx + 4]
mov dword [esp + 0x158], 0
mov dword [esp + 0x184], edx
lea eax, [ecx + 0x28]
call fcn.0040bcb0
mov ecx, dword [esp + 0x184]
neg eax
mov dword [ecx], eax
mov ebx, dword [esp + 0x158]
inc ebx
mov dword [esp + 0x158], ebx
mov edx, dword [esp + 0x190]
dec ebx
mov eax, dword [edx + 0x28]
mov edx, dword [edx + 0x2c]
cmp ebx, eax
mov dword [esp + 0xe0], eax
mov dword [esp + 0xe4], edx
jb 0x414fd1
mov dword [esp + 4], 0x595
mov dword [esp], 0x414200
call fcn.00410c8c
mov ecx, dword [esp + 0xe4]
cmp byte [ecx + ebx], 0x24
sete dl
mov ecx, 0x4155a4
push edx
lea eax, [esp + 0x194]
mov edx, 0x414200
push ecx
push eax
mov eax, 0x595
push edx
push 0xc
call fcn.00403888
jmp 0x4148a7
mov ebx, dword [esp + 0x190]
mov dword [ebx + 4], 0x7fffffff
jmp 0x4148a7
mov ecx, dword [esp + 0x190]
mov eax, dword [ecx + 0x28]
mov edx, dword [ecx + 0x2c]
mov dword [esp + 0x100], eax
cmp esi, eax
mov dword [esp + 0x104], edx
jae 0x415448
mov edi, dword [esp + 0x104]
mov ebx, dword [esp + 0x158]
cmp byte [edi + ebx], 0x2d
jne 0x4150db
mov ebx, dword [esp + 0x190]
mov dword [ebx + 4], 0
mov edx, dword [esp + 0x190]
mov eax, dword [edx + 0x28]
mov edx, dword [edx + 0x2c]
mov edi, dword [esp + 0x158]
mov dword [esp + 0x108], eax
mov esi, eax
cmp esi, edi
mov dword [esp + 0x10c], edx
jb 0x41545c
mov ecx, esi
mov ebx, dword [esp + 0x10c]
lea eax, [esp + 0x18]
sub ecx, dword [esp + 0x158]
add ebx, dword [esp + 0x158]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], ebx
call fcn.0040bcb0
push dword [esp + 0x1c]
push dword [esp + 0x1c]
mov edi, dword [esp + 0x198]
push dword [edi + 0x2c]
push dword [edi + 0x28]
call fcn.00404460
mov dword [esp + 0x158], eax
jmp 0x4148a7
mov esi, dword [esp + 0x190]
mov eax, dword [esi + 0x28]
mov edx, dword [esi + 0x2c]
mov dword [esp + 0xf8], eax
cmp ebx, eax
mov dword [esp + 0xfc], edx
jb 0x41510e
mov dword [esp + 4], 0x5a6
mov dword [esp], 0x414200
call fcn.00410c8c
mov ecx, dword [esp + 0xfc]
movzx eax, byte [ecx + ebx]
call fcn.00415a50
test al, al
je 0x4151ac
mov edi, dword [esp + 0x190]
mov eax, dword [edi + 0x28]
mov edx, dword [edi + 0x2c]
mov dword [esp + 0xe8], eax
mov ebx, dword [esp + 0x158]
mov esi, eax
mov dword [esp + 0xec], edx
cmp esi, ebx
jb 0x415470
mov ecx, esi
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x190]
sub ecx, dword [esp + 0x158]
add ebx, 4
lea eax, [esp + 0x30]
add edx, dword [esp + 0x158]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], edx
call fcn.0040bcb0
mov dword [ebx], eax
push dword [esp + 0x34]
push dword [esp + 0x34]
mov ecx, dword [esp + 0x198]
push dword [ecx + 0x2c]
push dword [ecx + 0x28]
call fcn.00404460
mov dword [esp + 0x158], eax
jmp 0x4148a7
mov dword [esi + 4], 0
jmp 0x4148a7
mov ecx, dword [esp + 0x190]
mov esi, dword [esp + 0x158]
inc esi
mov dword [esp + 0x158], esi
mov eax, dword [ecx + 0x28]
mov edx, dword [ecx + 0x2c]
mov dword [esp + 0x58], eax
dec esi
lea edi, [ecx + 0x14]
mov dword [esp + 0x5c], edx
cmp esi, eax
jae 0x415484
mov ecx, dword [esp + 0x5c]
movzx edx, byte [ecx + esi]
mov byte [edi], dl
mov ebx, dword [esp + 0x190]
mov edx, dword [esp + 0x190]
mov eax, dword [edx + 0x28]
mov edx, dword [edx + 0x2c]
add ebx, 0x28
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x158]
cmp eax, ecx
mov dword [esp + 0x64], edx
mov dword [esp + 0x17c], eax
jb 0x415498
mov esi, dword [esp + 0x17c]
mov ecx, dword [esp + 0x64]
sub esi, dword [esp + 0x158]
add ecx, dword [esp + 0x158]
mov dword [ebx], esi
mov dword [ebx + 4], ecx
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
add esp, 0x194
ret
mov dword [esp], 0x467460
call fcn.0041407c
mov esi, 0x41435c
mov ebx, eax
push esi
push 0x1c
mov ecx, dword [esp + 0x198]
push dword [ecx + 0x2c]
push dword [ecx + 0x28]
call fcn.0040b7e0
push edx
mov edx, 0x414200
push eax
mov eax, 0xc
push edx
push eax
mov eax, ebx
push 0x5b9
push 0
call fcn.00414244
mov dword [esp], eax
call fcn.00413d00
mov dword [esp + 4], 0x4fe
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x503
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x509
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x50d
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x511
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x516
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x51b
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x51d
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x51f
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x526
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x527
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x52b
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x531
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x53d
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x54a
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x559
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x571
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x579
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x583
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x58c
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x592
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x59e
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x5a2
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x5a8
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x5b4
mov dword [esp], 0x414200
call fcn.00410c8c
mov dword [esp + 4], 0x5b5
mov dword [esp], 0x414200
call fcn.00410c8c
push ebx
mov ecx, 0x41433c
mov ebx, dword [eax]
push esi
mov edx, dword [eax - 0x38]
mov esi, dword [ebx + 0x28]
push edi
cmp esi, edx
push ecx
push 0x1d
jae 0x4154d3
mov edi, 0x414200
push 0x4fd
push edi
call fcn.00410c8c
mov ecx, dword [ebx + 0x2c]
add ecx, edx
push ecx
sub esi, edx
push esi
call fcn.0040b7e0
pop edi
pop esi
pop ebx
ret