Function at 0x42d1a0
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x2c
push ebx
push ebp
push esi
mov esi, dword [esp + 0x4c]
lea eax, [esp + 0x14]
push edi
lea ecx, [esp + 0x14]
push eax
push ecx
push esi
call fcn.004447f0
lea edx, [esp + 0x24]
lea ecx, [esp + 0x1c]
lea eax, [esi + 2]
push edx
push ecx
push eax
call fcn.004447f0
mov ebp, dword [esp + 0x58]
mov edi, dword [esp + 0x28]
mov esi, dword [esp + 0x60]
mov ebx, dword [esp + 0x2c]
mov edx, ebp
xor eax, eax
sub edx, edi
xor ecx, ecx
add edx, esi
mov esi, dword [esp + 0x6c]
add ebx, ebp
mov dword [esp + 0x28], edx
mov ax, word [esi + 2]
mov cx, word [esi]
mov edx, dword [esp + 0x68]
mov dword [esp + 0x2c], ebx
mov ebx, dword [esp + 0x5c]
lea edi, [esi + 4]
push eax
push ecx
push edi
push ebx
push ebp
push edx
push fcn.004c00b0
call fcn.00444850
mov eax, dword [esp + 0x84]
lea ecx, [esp + 0x4c]
lea edx, [esp + 0x50]
inc eax
push ecx
push edx
push eax
call fcn.004447f0
mov eax, dword [esp + 0x5c]
add esp, 0x40
test eax, eax
je 0x42dcf3
mov edx, dword [esp + 0x4c]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
add edx, ebx
mov dword [esp + 0x38], edx
mov edx, ecx
cmp edx, eax
mov dword [esp + 0x40], ecx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x34], eax
mov dword [esp + 0x30], ebx
jge 0x42d2dc
mov edx, dword [esp + 0x1c]
jmp 0x42d271
mov ecx, dword [esp + 0x40]
add edx, ecx
cmp edx, eax
jg 0x42d29c
xor eax, eax
xor edx, edx
mov ax, word [esi + 2]
mov dx, word [esi]
push eax
mov eax, dword [esp + 0x54]
push edx
push edi
push ebx
inc eax
push ecx
push eax
push fcn.004c00b0
call fcn.00444850
add esp, 0x1c
jmp 0x42d2c6
xor edx, edx
xor eax, eax
mov dx, word [esi + 2]
mov ax, word [esi]
push edx
mov edx, dword [esp + 0x54]
push eax
push edi
push ebx
push ecx
lea ecx, [esp + 0x40]
lea eax, [edx + 1]
push ecx
push eax
push fcn.004c00b0
call fcn.00444a10
add esp, 0x20
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x10]
add ecx, edx
cmp ecx, eax
mov dword [esp + 0x40], ecx
jl 0x42d26d
xor ecx, ecx
xor edx, edx
mov cx, word [esi + 2]
mov dx, word [esi]
push ecx
push edx
push edi
push ebx
push eax
mov eax, dword [esp + 0x64]
add eax, 2
push eax
push fcn.004c00b0
call fcn.00444850
mov eax, dword [esp + 0x6c]
lea ecx, [esp + 0x30]
lea edx, [esp + 0x34]
push ecx
push edx
push eax
call fcn.004447f0
mov ecx, dword [esp + 0x78]
lea edx, [esp + 0x38]
push edx
lea eax, [ecx + 6]
lea ecx, [esp + 0x44]
push ecx
push eax
call fcn.004447f0
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x80]
add edx, ebx
mov dword [esp + 0x48], edx
mov edx, ebx
sub edx, ecx
lea ecx, [esp + 0x54]
add edx, eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x44], edx
lea edx, [esp + 0x4c]
add eax, 3
push ecx
push edx
push eax
call fcn.004447f0
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x54]
add eax, ebp
add esp, 0x40
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x10]
cmp ecx, eax
mov dword [esp + 0x40], ecx
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x30], ecx
mov dword [esp + 0x38], eax
jge 0x42d405
mov edx, dword [esp + 0x20]
jmp 0x42d398
mov ecx, dword [esp + 0x40]
add edx, ecx
cmp edx, eax
jg 0x42d3c5
xor edx, edx
xor eax, eax
mov dx, word [esi + 2]
mov ax, word [esi]
push edx
push eax
push edi
push ecx
mov ecx, dword [esp + 0x60]
push ebp
lea eax, [ecx + 3]
push eax
push fcn.004c00b0
call fcn.00444850
add esp, 0x1c
jmp 0x42d3ef
xor edx, edx
xor eax, eax
mov dx, word [esi + 2]
mov ax, word [esi]
push edx
mov edx, dword [esp + 0x54]
push eax
push edi
push ecx
lea ecx, [esp + 0x3c]
push ebp
lea eax, [edx + 3]
push ecx
push eax
push fcn.004c00b0
call fcn.00444a10
add esp, 0x20
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x10]
add ecx, edx
cmp ecx, eax
mov dword [esp + 0x40], ecx
jl 0x42d394
xor ecx, ecx
xor edx, edx
mov cx, word [esi + 2]
mov dx, word [esi]
push ecx
push edx
push edi
push eax
mov eax, dword [esp + 0x60]
push ebp
add eax, 6
push eax
push fcn.004c00b0
call fcn.00444850
mov eax, dword [esp + 0x6c]
lea ecx, [esp + 0x30]
lea edx, [esp + 0x34]
push ecx
add eax, 2
push edx
push eax
call fcn.004447f0
mov ecx, dword [esp + 0x78]
lea edx, [esp + 0x38]
push edx
lea eax, [ecx + 8]
lea ecx, [esp + 0x44]
push ecx
push eax
call fcn.004447f0
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x80]
add edx, ebx
mov dword [esp + 0x48], edx
mov edx, ebx
sub edx, ecx
lea ecx, [esp + 0x54]
add edx, eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x44], edx
lea edx, [esp + 0x50]
add eax, 5
push ecx
push edx
push eax
call fcn.004447f0
mov ecx, dword [esp + 0x88]
mov eax, dword [esp + 0x54]
add ecx, ebp
add esp, 0x40
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x10]
cmp eax, ecx
mov dword [esp + 0x40], eax
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x30], eax
mov dword [esp + 0x38], ecx
jge 0x42d555
mov edx, dword [esp + 0x20]
jmp 0x42d4c8
mov eax, dword [esp + 0x40]
add edx, eax
cmp edx, ecx
jg 0x42d503
xor edx, edx
xor ecx, ecx
mov dx, word [esi + 2]
mov cx, word [esi]
push edx
push ecx
mov ecx, dword [esp + 0x50]
push edi
push eax
mov eax, dword [esp + 0x2c]
mov edx, ebp
sub edx, eax
mov eax, dword [esp + 0x60]
add edx, ecx
add eax, 5
push edx
push eax
push fcn.004c00b0
call fcn.00444850
add esp, 0x1c
jmp 0x42d53b
xor ecx, ecx
xor edx, edx
mov cx, word [esi + 2]
mov dx, word [esi]
push ecx
mov ecx, dword [esp + 0x20]
push edx
mov edx, dword [esp + 0x50]
push edi
push eax
mov eax, ebp
sub eax, ecx
lea ecx, [esp + 0x3c]
add eax, edx
mov edx, dword [esp + 0x60]
push eax
push ecx
lea eax, [edx + 5]
push eax
push fcn.004c00b0
call fcn.00444a10
add esp, 0x20
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x10]
add eax, edx
cmp eax, ecx
mov dword [esp + 0x40], eax
jl 0x42d4c4
mov edx, dword [esp + 0x50]
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x20]
lea eax, [edx + 8]
push ecx
push eax
call fcn.004447f0
mov edx, dword [esp + 0x1c]
xor eax, eax
mov ax, word [esi + 2]
xor ecx, ecx
mov cx, word [esi]
push eax
push ecx
mov ecx, dword [esp + 0x5c]
push edi
push edx
mov edx, dword [esp + 0x38]
mov eax, ebp
sub eax, edx
add eax, ecx
mov ecx, dword [esp + 0x6c]
push eax
lea eax, [ecx + 8]
push eax
push fcn.004c00b0
call fcn.00444850
mov ecx, dword [esp + 0x78]
lea edx, [esp + 0x40]
lea eax, [esp + 0x3c]
push edx
push eax
lea eax, [ecx + 6]
push eax
call fcn.004447f0
mov ecx, dword [esp + 0x84]
lea edx, [esp + 0x4c]
lea eax, [esp + 0x44]
push edx
push eax
lea eax, [ecx + 8]
push eax
call fcn.004447f0
mov edx, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x88]
add edx, ebp
mov dword [esp + 0x54], edx
mov edx, ebp
sub edx, ecx
add esp, 0x40
add edx, eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x10], edx
lea ecx, [esp + 0x20]
lea edx, [esp + 0x1c]
add eax, 7
push ecx
push edx
push eax
call fcn.004447f0
mov edx, dword [esp + 0x58]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
add esp, 0xc
add edx, ebx
cmp eax, ecx
mov dword [esp + 0x40], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x34], ecx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x38], edx
jge 0x42d6cc
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x40]
add edx, eax
cmp edx, ecx
jg 0x42d67a
xor ecx, ecx
xor edx, edx
mov cx, word [esi + 2]
mov dx, word [esi]
push ecx
push edx
mov edx, dword [esp + 0x28]
mov ecx, ebx
sub ecx, edx
mov edx, dword [esp + 0x54]
add ecx, edx
mov edx, dword [esp + 0x58]
push edi
push ecx
push eax
lea eax, [edx + 7]
push eax
push fcn.004c00b0
call fcn.00444850
add esp, 0x1c
jmp 0x42d6b2
xor ecx, ecx
xor edx, edx
mov cx, word [esi + 2]
mov dx, word [esi]
push ecx
push edx
mov edx, dword [esp + 0x28]
mov ecx, ebx
sub ecx, edx
mov edx, dword [esp + 0x54]
add ecx, edx
push edi
push ecx
push eax
mov eax, dword [esp + 0x64]
lea edx, [esp + 0x40]
add eax, 7
push edx
push eax
push fcn.004c00b0
call fcn.00444a10
add esp, 0x20
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x10]
add eax, edx
cmp eax, ecx
mov dword [esp + 0x40], eax
jl 0x42d63b
mov eax, dword [esp + 0x50]
lea ecx, [esp + 0x28]
lea edx, [esp + 0x18]
push ecx
inc eax
push edx
push eax
call fcn.004447f0
mov eax, dword [esp + 0x5c]
lea ecx, [esp + 0x30]
lea edx, [esp + 0x24]
push ecx
add eax, 7
push edx
push eax
call fcn.004447f0
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x64]
add ecx, ebx
mov dword [esp + 0x40], ecx
mov ecx, ebx
sub ecx, eax
lea eax, [esp + 0x2c]
add ecx, edx
lea edx, [esp + 0x30]
mov dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x68]
push edx
push eax
lea eax, [ecx + 3]
push eax
call fcn.004447f0
mov ecx, dword [esp + 0x74]
lea edx, [esp + 0x3c]
lea eax, [esp + 0x34]
push edx
push eax
lea eax, [ecx + 5]
push eax
call fcn.004447f0
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x78]
add edx, ebp
mov dword [esp + 0x44], edx
mov edx, ebp
sub edx, ecx
lea ecx, [esp + 0x50]
add edx, eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x40], edx
lea edx, [esp + 0x4c]
add eax, 4
push ecx
push edx
push eax
call fcn.004447f0
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x68], ecx
mov ecx, dword [esp + 0x60]
add esp, 0x3c
cmp eax, ecx
mov dword [esp + 0x54], eax
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], eax
mov dword [esp + 0x38], ecx
jge 0x42d86b
mov ecx, dword [esp + 0x14]
cmp ecx, edx
mov dword [esp + 0x40], ecx
jge 0x42d859
mov ecx, dword [esp + 0x1c]
jmp 0x42d7c1
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0x40]
add edx, ecx
mov ecx, dword [esp + 0x10]
cmp edx, ecx
jg 0x42d809
mov ecx, dword [esp + 0x20]
lea edx, [eax + ecx]
mov ecx, dword [esp + 0x24]
cmp edx, ecx
jge 0x42d809
xor ecx, ecx
xor edx, edx
mov cx, word [esi + 2]
mov dx, word [esi]
push ecx
mov ecx, dword [esp + 0x54]
push edx
push edi
push eax
mov eax, dword [esp + 0x50]
push eax
lea eax, [ecx + 4]
push eax
push fcn.004c00b0
call fcn.00444850
add esp, 0x1c
jmp 0x42d837
xor edx, edx
xor ecx, ecx
mov dx, word [esi + 2]
mov cx, word [esi]
push edx
mov edx, dword [esp + 0x44]
push ecx
mov ecx, dword [esp + 0x58]
push edi
push eax
lea eax, [esp + 0x3c]
push edx
push eax
lea eax, [ecx + 4]
push eax
push fcn.004c00b0
call fcn.00444a10
add esp, 0x20
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x10]
add eax, ecx
cmp eax, edx
mov dword [esp + 0x40], eax
jl 0x42d7bd
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x54]
add eax, dword [esp + 0x20]
cmp eax, dword [esp + 0x24]
mov dword [esp + 0x54], eax
jl 0x42d7ab
mov eax, dword [esp + 0x58]
test eax, eax
jne 0x42dcf3
mov esi, dword [esp + 0x50]
lea edx, [esp + 0x58]
lea ecx, [esp + 0x40]
push edx
lea eax, [esi + 0xb]
push ecx
push eax
call fcn.004447f0
lea edx, [esp + 0x50]
lea ecx, [esp + 0x60]
lea eax, [esi + 0xc]
push edx
push ecx
push eax
call fcn.004447f0
mov eax, dword [esp + 0x58]
add esp, 0x18
test eax, eax
je 0x42d98d
mov ecx, dword [esp + 0x54]
test ecx, ecx
je 0x42d98d
mov esi, dword [esp + 0x48]
lea edx, [ecx + eax + 0x50]
cmp esi, edx
jle 0x42d98d
mov ecx, esi
sub ecx, eax
sub ecx, 0x14
push ecx
call fcn.0047f470
add eax, 0xa
mov edx, esi
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x58]
sub edx, eax
sub edx, 0x14
push edx
call fcn.0047f470
mov ecx, dword [esp + 0x1c]
mov edx, eax
add edx, 0xa
mov eax, ecx
sub eax, edx
mov dword [esp + 0x18], edx
cdq
xor eax, edx
add esp, 8
sub eax, edx
mov edx, dword [esp + 0x40]
add edx, 0xa
cmp eax, edx
jge 0x42d94a
mov edx, dword [esp + 0x54]
mov eax, esi
sub eax, edx
sub eax, 0x14
push eax
call fcn.0047f470
mov ecx, dword [esp + 0x18]
mov edx, eax
add edx, 0xa
mov eax, ecx
sub eax, edx
mov dword [esp + 0x14], edx
cdq
xor eax, edx
add esp, 4
sub eax, edx
mov edx, dword [esp + 0x40]
add edx, 0xa
cmp eax, edx
jl 0x42d915
mov esi, dword [esp + 0x4c]
mov eax, dword [esp + 0x48]
push esi
push eax
push edi
push ebx
push ecx
mov ecx, dword [esp + 0x64]
lea eax, [ecx + 0xb]
push eax
push fcn.004bfae0
call fcn.00444850
mov edx, dword [esp + 0x64]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x6c]
push esi
push edx
push edi
push ebx
push eax
lea eax, [ecx + 0xc]
push eax
push fcn.004bfae0
call fcn.00444850
add esp, 0x38
jmp 0x42d991
mov esi, dword [esp + 0x4c]
mov edx, dword [esp + 0x50]
lea ecx, [esp + 0x58]
push ecx
lea eax, [edx + 0x11]
lea edx, [esp + 0x44]
push edx
push eax
call fcn.004447f0
mov eax, dword [esp + 0x5c]
lea ecx, [esp + 0x50]
lea edx, [esp + 0x60]
add eax, 0x12
push ecx
push edx
push eax
call fcn.004447f0
mov eax, dword [esp + 0x58]
add esp, 0x18
test eax, eax
je 0x42dab9
mov ecx, dword [esp + 0x54]
test ecx, ecx
je 0x42dab9
lea edx, [ecx + eax + 0x50]
mov ecx, dword [esp + 0x48]
cmp ecx, edx
jle 0x42dab9
sub ecx, eax
sub ecx, 0x14
push ecx
call fcn.0047f470
mov edx, dword [esp + 0x58]
add eax, 0xa
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x4c]
sub eax, edx
sub eax, 0x14
push eax
call fcn.0047f470
mov ecx, dword [esp + 0x1c]
mov edx, eax
add edx, 0xa
mov eax, ecx
sub eax, edx
mov dword [esp + 0x18], edx
cdq
xor eax, edx
add esp, 8
sub eax, edx
mov edx, dword [esp + 0x40]
add edx, 0xa
cmp eax, edx
jge 0x42da6a
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x54]
sub eax, edx
sub eax, 0x14
push eax
call fcn.0047f470
mov ecx, dword [esp + 0x18]
mov edx, eax
add edx, 0xa
mov eax, ecx
sub eax, edx
mov dword [esp + 0x14], edx
cdq
xor eax, edx
add esp, 4
sub eax, edx
mov edx, dword [esp + 0x40]
add edx, 0xa
cmp eax, edx
jl 0x42da33
mov eax, dword [esp + 0x48]
push esi
push eax
mov eax, dword [esp + 0x60]
mov edx, ebx
push edi
sub edx, eax
mov eax, dword [esp + 0x5c]
add edx, esi
add eax, 0x11
push edx
push ecx
push eax
push fcn.004bfae0
call fcn.00444850
mov edx, dword [esp + 0x60]
mov ecx, dword [esp + 0x64]
mov eax, dword [esp + 0x6c]
sub ebx, edx
mov edx, dword [esp + 0x2c]
push esi
push ecx
add ebx, esi
push edi
push ebx
add eax, 0x12
push edx
push eax
push fcn.004bfae0
call fcn.00444850
add esp, 0x38
mov ebx, dword [esp + 0x50]
lea ecx, [esp + 0x58]
lea edx, [esp + 0x40]
push ecx
lea eax, [ebx + 0xd]
push edx
push eax
call fcn.004447f0
lea ecx, [esp + 0x50]
lea edx, [esp + 0x60]
lea eax, [ebx + 0xe]
push ecx
push edx
push eax
call fcn.004447f0
mov eax, dword [esp + 0x58]
add esp, 0x18
test eax, eax
je 0x42dbcb
mov eax, dword [esp + 0x54]
test eax, eax
je 0x42dbcb
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x44]
lea edx, [ecx + eax + 0x50]
cmp esi, edx
jle 0x42dbcb
mov ecx, esi
sub ecx, eax
sub ecx, 0x14
push ecx
call fcn.0047f470
mov ecx, dword [esp + 0x48]
mov edx, esi
sub edx, ecx
add eax, 0xa
sub edx, 0x14
mov dword [esp + 0x18], eax
push edx
call fcn.0047f470
mov ecx, eax
mov eax, dword [esp + 0x1c]
add ecx, 0xa
add esp, 8
sub eax, ecx
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x58]
cdq
xor eax, edx
add ecx, 0xa
sub eax, edx
cmp eax, ecx
jge 0x42db8c
mov ecx, dword [esp + 0x44]
mov edx, esi
sub edx, ecx
sub edx, 0x14
push edx
call fcn.0047f470
mov ecx, eax
mov eax, dword [esp + 0x18]
add ecx, 0xa
add esp, 4
sub eax, ecx
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x58]
cdq
xor eax, edx
add ecx, 0xa
sub eax, edx
cmp eax, ecx
jl 0x42db59
mov ebx, dword [esp + 0x48]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x50]
push esi
push ebx
push edi
push edx
add eax, 0xd
push ebp
push eax
push fcn.004bfae0
call fcn.00444850
mov edx, dword [esp + 0x6c]
mov ecx, dword [esp + 0x2c]
push esi
push ebx
push edi
push ecx
lea eax, [edx + 0xe]
push ebp
push eax
push fcn.004bfae0
call fcn.00444850
add esp, 0x38
jmp 0x42dbcf
mov ebx, dword [esp + 0x48]
mov eax, dword [esp + 0x50]
lea ecx, [esp + 0x58]
lea edx, [esp + 0x40]
add eax, 0xf
push ecx
push edx
push eax
mov dword [esp + 0x54], eax
call fcn.004447f0
mov eax, dword [esp + 0x5c]
lea ecx, [esp + 0x50]
lea edx, [esp + 0x60]
add eax, 0x10
push ecx
push edx
push eax
mov dword [esp + 0x68], eax
call fcn.004447f0
mov eax, dword [esp + 0x58]
add esp, 0x18
test eax, eax
je 0x42dcf3
mov eax, dword [esp + 0x54]
test eax, eax
je 0x42dcf3
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x44]
lea edx, [ecx + eax + 0x50]
cmp esi, edx
jle 0x42dcf3
mov ecx, esi
sub ecx, eax
sub ecx, 0x14
push ecx
call fcn.0047f470
add eax, 0xa
mov edx, esi
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x48]
sub edx, eax
sub edx, 0x14
push edx
call fcn.0047f470
mov ecx, eax
mov eax, dword [esp + 0x1c]
add ecx, 0xa
add esp, 8
sub eax, ecx
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x58]
cdq
xor eax, edx
add ecx, 0xa
sub eax, edx
cmp eax, ecx
jge 0x42dcae
mov eax, dword [esp + 0x44]
mov edx, esi
sub edx, eax
sub edx, 0x14
push edx
call fcn.0047f470
mov ecx, eax
mov eax, dword [esp + 0x18]
add ecx, 0xa
add esp, 4
sub eax, ecx
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x58]
cdq
xor eax, edx
add ecx, 0xa
sub eax, edx
cmp eax, ecx
jl 0x42dc7b
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x14]
mov eax, ebp
push esi
sub eax, ecx
mov ecx, dword [esp + 0x4c]
push ebx
push edi
add eax, ebx
push edx
push eax
push ecx
push fcn.004bfae0
call fcn.00444850
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x2c]
push esi
sub ebp, eax
mov eax, dword [esp + 0x70]
push ebx
push edi
add ebp, ebx
push edx
push ebp
push eax
push fcn.004bfae0
call fcn.00444850
add esp, 0x38
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x2c
ret